Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF][SF2]Relacja ManyToMany, Dodatkowe pole w tabeli łączącej
mimol
post
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....
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
misi3kk
post
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 4
Dołączył: 14.05.2010

Ostrzeżenie: (0%)
-----


Mam u siebie podobny kod, oparty właśnie o SonataMediaBundle.

Rozwiązali to tak jak napisał wyżej @thek - osobne entity do łączenia i w nim relacja ManyToOne, a w dwóch pozostałych OneToMany.
Jeśli ktoś nie wierzy, to zapraszam do lektury pliku DependencyInjection/SonataMediaExtension.php wspomnianego wcześniej bundla (aktualnie od 170 linijki jest mapowanie Doctrine).

Jest z tym cała masa pracy, samego mapowania naszukałem się bardzo bardzo długo, ale da się to zrobić (IMG:style_emoticons/default/wink.gif) Problem głównie był z SonataAdminBundle i usuwaniem powiązań.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 13:39