Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony][doctrine]Pobranie tylko wybranych pol z joinowanej tabeli
nospor
post 4.12.2016, 21:27:42
Post #1





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6297
Dołączył: 27.12.2004




Hejka,
w klasie repository mam taki kod:

  1. $query = $this->createQueryBuilder('s')
  2. ->leftJoin('s.user', 'u')->addSelect('u')
  3. ->orderBy('s.id', 'DESC')
  4. ->getQuery();

ktory to pobiera dane z tabeli s oraz JOINuje tabele u. Wszystko fajnie pieknie, tylko ten kod zwraca mi wszystkie pola z tabeli u a ja bym chcial pobrac tylko dwa pola z tabeli u.
Przegladam dokumentacje i wychodzi, ze za bardzo sie nie da.
Probowalem nawet tak
->addSelect(['u.pole1', 'u.pole2'])
ale to skolei pluje mi wyjatkiem
Cytat
Call to a member function getId() on array


Da sie to zrobic w tym queryBuilder czy musze inaczej budowac zapytanie?
Powód edycji: [nospor]:


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Turson
post 5.12.2016, 10:46:06
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


To query z posta #1 zwraca tablicę dlatego dostajesz "Call to a member function getId() on array". Możesz z takiej tablicy zrobić obiekt (zapewne encję) samemu
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 Wersja Lo-Fi Aktualny czas: 27.04.2024 - 18:36