Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 5 Dołączył: 10.12.2007 Ostrzeżenie: (0%)
|
Witam.
Mam dwie tabele: Movie, Media, połączone są relacją ManyToMany, więc tak naprawdę mam jeszcze tabele movie__has_media. Chciałbym aby w tabeli łączącej(movie__has_media) Było dodatkowe pole type(będzie przechowywać typ obrazka). Nie chcę mieć tego w tabeli media(nie zawsze typ obrazka jest wymagany) Czy da się takie coś osiągać. Jeśli tak to jak? Jak potem wyświetlić typ obrazka?(Nie jest on przecież ani w tabeli media, ani w tabeli movie) =================== Domyślam się, że można zrobić jeszcze Movie , movie_has_type, movie_has_type_has_media, media, Jednak uważam to za gorsze rozwiązanie.... |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 8.01.2013 Ostrzeżenie: (0%)
|
Witajcie,
mam problem właśnie z takim rozwiązaniem, a konkretnie z Sonatą, której używam do admina. Używając przykładu podanego w tym wątku chciałbym przy edycji Movie mieć możliwość edycji Mediów powiązanych z tym konkretnym Movie wraz z edycją dodatkowych pól trzymanych w tabeli łączącej. Zakładam, że definicje w Doctrine mam dobrze, tabele się generują poprawnie kiedy użyję doctrine:schema:update. Kod w MovieAdmin: Kod protected function configureFormFields(FormMapper $formMapper) { $formMapper ->add('name') ->add('media', 'sonata_type_collection', array( 'by_reference' => false ), array( 'edit' => 'inline', 'inline' => 'table', 'sortable' => 'sortOrder', )) ; } Podczas edycji Movie wyświetla się wszystko OK, jest lista powiązanych mediów wraz z dodatkowymi polami, problem jest gdy chcę dodać nowe media. Klikam na przycisk "add new" znajdujący się pod listą, wpisuję co trzeba, klikam "save" i dostaję błąd: Cytat Entity of type MySite\MyBundle\Entity\MovieHasMedia is missing an assigned ID for field 'movie'. The identifier generation strategy for this entity requires the ID field to be populated before EntityManager#persist() is called. If you want automatically generated identifiers instead you need to adjust the metadata mapping accordingly. Jak sobie z tym poradzić? Niedawno zacząłem przygodę z SF2 i mnie zblokowało. (IMG:style_emoticons/default/sciana.gif) Dzięki wielkie za każdą pomoc. Ten post edytował HansKlops 8.01.2013, 00:54:08 |
|
|
|
mimol [SF][SF2]Relacja ManyToMany 4.01.2013, 11:22:36
thek To co chcesz osiągnąc to jedna z "bolączek... 4.01.2013, 12:34:38
mimol Nie wiem czy kiedykolwiek używałeś https://github.... 4.01.2013, 13:31:39
misi3kk Mam u siebie podobny kod, oparty właśnie o SonataM... 4.01.2013, 19:34:03
m44 Doctrine jako ORM dostarcza tylko kilka podstawowy... 4.01.2013, 21:50:36 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 11:34 |