Hej, przeszukałem internet ale wciąż nie moge znaleźć odpowiedzi na moje pytanie.
Mam zrobioną relację miedzy tabelami, robie zapytanie na tabeli numer jeden ale chce wyciągać dane tylko z tabeli nr co za tym idzie, chce aby Doctrine robił mi obiekty tej własnie, drugiej tabeli.
Mam coś takiego:
return $this->createQueryBuilder('f')
->leftJoin('f.advert', 'ad' )
->addSelect('ad')
->andWhere('f.user = :user')
->setParameter('user', $user)
->orderBy('f.added', 'DESC')
->setMaxResults(10)
->getQuery()
->getResult()
Jednakże to nie działa, wciąż wyciąga mi dane z tabeli nr 1. W czystym sql miałbym to już załatwione, jednakże w DQL nie do końca wiem jak to zrobić.
Jak próbuje zamiast addSelect zrobić select dostaje błąd:
Error: Cannot select entity through identification variables without choosing at least one root entity alias.
Natomiast taka próba:
->select('ad.id')
Zwraca mi tablice identyfikatorów z tabeli nr 2 czyli mojej relacji. Chciałbym uzyskać podobny efekt ale chciałbym wyciągąc całe obiekt, a nie same ID.
Nie możemy z doctrinem dojść do porozumienia.