![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 7 Dołączył: 3.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki problem chciałbym pobrać wartości z relacji A selekcjonując ją warunkiem z relacji B. Relacje są połączone relacją Wiele do Wiele. Niestety w symfony nie można tutaj użyć tabeli pośredniej, gdyż DQL korzysta tylko z plików klas. Generalnie zapytanie, gdy istnieje klasa pośrednia działa, ale po zmianie tego na relacje ManyToMany w klasie Entity nie są pobierane odpowiednie rekordy.
Otóż, jeśli któryś z obiektów z relacji B spełnia warunek, pobierane są wszystkie obiekty z relacji A, a nie tylko te, które spełniają warunek. Zapytanie wygląda mniej więcej tak:
Gdy istniała klasa tebeli pośredniej, wszystko działało. (W entity łączyłem się z relacją pośrednią przez ManyToOne) Teraz po zmianie na ManyToMany, gdzie tabela pośrednia istnieje tylko w bazie danych, występuje powyższy błąd. Proszę, żeby ktoś napisał jak to poprawnie rozwiązać. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 30 Dołączył: 22.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
jakiej ty wersji symfony uzywasz?
Przecież co z tego że masz 2 klasy, jak zrobisz dobrego joina powstana w bazie 3 tabelki i z pobieraniem danych nie ma najmniejszego problemu. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 7 Dołączył: 3.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 21:46 |