Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [doctrine][Symfony2] Jak wyświetlić dane w szablonie
silverwind
post 12.01.2016, 03:21:52
Post #1





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


Moje Encje [User] one to many [Owner] one to many [Property] one to many [Tenant].

Połączyłem je w repozytorium User

  1. public function getQueryBuilder($User ){
  2. $qb = $this->createQueryBuilder('u')
  3. ->select('u,o,p,t')
  4. ->Join('u.owner','o')
  5. ->Join('o.property','p')
  6. ->Join('p.tenant','t')
  7. ->where('u.username = :user')
  8. ->setParameter('user', $User)
  9. ->getQuery()
  10. ->getArrayrResult();
  11.  
  12. return $qb;
  13. }


Chce wyświetlić je w szablonie.
Problem jest taki że nie wyświetlają mi się wszyscy właściciele użytkownika poniżej jest screen z dumpa.
http://zapodaj.net/7d28ba489cd03.gif.html



Go to the top of the page
+Quote Post
Riggs
post 12.01.2016, 06:49:59
Post #2





Grupa: Zarejestrowani
Postów: 162
Pomógł: 13
Dołączył: 16.06.2007

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


Pokaż jeszcze kod encji, wtedy będzie łatwiej. W encji inicjalizujesz DoctrineCollection dla owner?
Go to the top of the page
+Quote Post
prz3kus
post 12.01.2016, 08:07:57
Post #3





Grupa: Zarejestrowani
Postów: 260
Pomógł: 30
Dołączył: 22.01.2007

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


  1. public function getQueryBuilder($User ){
  2. $qb = $this->createQueryBuilder('u')
  3. ->select('u,o,p,t')
  4. ->Join('u.owner','o')
  5. ->Join('o.property','p')
  6. ->Join('p.tenant','t')
  7. ->where('o.username = :user')//zamiast u -> o questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif?
  8. ->setParameter('user', $User)
  9. ->getQuery()
  10. ->getArrayrResult();
  11.  
  12. return $qb;
  13. }
Go to the top of the page
+Quote Post
Forti
post 12.01.2016, 10:37:37
Post #4





Grupa: Zarejestrowani
Postów: 655
Pomógł: 73
Dołączył: 2.05.2014

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


Nie rozumiem cie co jest źle niby? Wszystko jest ok..

Robisz join i dostajesz te join, więc..?


--------------------
Overwatch24 - najbardziej zaawansowany Polski portal Overwatch od fanów dla fanów.

Fachowo.co

Behance.net/fachowo
Go to the top of the page
+Quote Post
silverwind
post 12.01.2016, 15:23:08
Post #5





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


Chyba nie dość jasno wyraziłem się patrzyliście może na screnaa. Chce to wyświetlić sobie w tabelce np Owner Propsety Tenant jak zrobię zapytanie z tymi trzema encjami to nie pokarzemi Owner który nie ma Properyty tylko tych którzy ją mają . Jak ten problem rozwiązać?

Ten post edytował silverwind 12.01.2016, 15:23:43
Go to the top of the page
+Quote Post
nospor
post 12.01.2016, 15:25:14
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No to zamiast JOIN rob LEFT JOIN


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

"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
silverwind
post 12.01.2016, 18:08:51
Post #7





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


Teraz mam problem z wyświetleniem tego poprzez pętle for in w Twigu przy Owner mam rozgałęzienie i powstaje tablica druga.
Go to the top of the page
+Quote Post
nospor
post 12.01.2016, 18:12:10
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Pokaz jak teraz wyglada zwrocona tablica bo za bardzo nie wiem o jakim rozgalezieniu mowisz.


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

"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
silverwind
post 12.01.2016, 18:33:16
Post #9





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


tu jest link ze screenem . próbowałem normalnie for in ale wyskakuje mi błąd . Dane wyświetlić chce w tabeli np. Nazwa nieruchomości , adres, właściciel , najemca

[kasuje link bo masz tam hasla....]
Powód edycji: [nospor]:
Go to the top of the page
+Quote Post
nospor
post 12.01.2016, 18:35:53
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nom, nie ma zadnego rozgalezienia. Owner wyglada dokladnie tak jak wczesniej, tylko ze zamiast tablicy z jednym ownerem masz tablice z dwoma. Rownie dobrze tam moze byc 10 ownerow i to nie powinno miec zadnego wplywu na twoja petle. jesli ma, znaczy ze zrobiles ja zle. Wypadaloby wiec teraz podac kod jaki masz.


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

"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
silverwind
post 13.01.2016, 08:49:51
Post #11





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


to jest kontroler
  1. /**
  2.   * Lists all Property entities.
  3.   *
  4.   * @Route("/", name="property_index")
  5.   * @Method("GET")
  6.   */
  7. public function indexAction()
  8. {
  9. $User=$this->getUser()->getUsername();
  10.  
  11. $em = $this->getDoctrine()->getManager();
  12.  
  13. $AllJoinTableRepo = $em->getRepository('UserUserBundle:User');
  14.  
  15. $QueryBuilder= $AllJoinTableRepo->getQueryBuilder($User);
  16.  
  17.  
  18. return array(
  19. 'QueryBuilder' => $QueryBuilder,
  20.  
  21.  
  22. );
  23. }

petla w szablonie
  1. {% for details in QueryBuilder %}
  2. <tr>
  3.  
  4. <th>{{ details.owner.name }}</th>
  5. <th>{{ details.owner.property.name }}</th>
  6. <th>{{ details.owner.property.adress }}</th>
  7.  
  8. <th>{{ details.owner.property.tenant.name }}</th>#}
  9. <th></th>
  10. {% endfor %}


Go to the top of the page
+Quote Post
nospor
post 13.01.2016, 09:57:38
Post #12





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nigdzie nie widze petli po owner, petli po property ani petli po tenant. Przeciez kazda z tych rzeczy moze wystapic wielokrotnie i kazda z tych rzeczy jest tablica.


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

"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
silverwind
post 13.01.2016, 13:38:16
Post #13





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


Przyznam się Naspor że nawet też na to wpadłem wink.gif hehe. Czasami mi się zdarza pomyśleć. Tylko pojawił się kolejny problem jak to po układać w tabeli? Jak jadę po owner to mi poziomo wyświetla kolumny.
to jest schemat jak by to miało wyglądać tak na szybko

owner property tenat
==========tenat
====property
owner properyt tenat

Ten post edytował silverwind 13.01.2016, 13:40:18
Go to the top of the page
+Quote Post
nospor
post 13.01.2016, 13:40:06
Post #14





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Zdarza sie kazdemu smile.gif

Co do schematu, to przygotuj prosze bardziej 'nienaszybko' wersje bo nie kumam jak to ma wygladac ostatecznie sad.gif


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

"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
silverwind
post 13.01.2016, 13:52:14
Post #15





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


mniej więcej tak http://naforum.zapodaj.net/7fc66ba36d18.gif.html
Go to the top of the page
+Quote Post
nospor
post 13.01.2016, 13:54:23
Post #16





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ok, pokaz teraz kod jaki aktualnie masz


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

"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
silverwind
post 13.01.2016, 14:13:42
Post #17





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


a da się to w ogóle w takie formie wyświetlić jak chce? Czy może w kontrolerze lub w repozytorium użyć jakieś innej funkcji?


Ten post edytował silverwind 13.01.2016, 16:53:39
Go to the top of the page
+Quote Post
nospor
post 14.01.2016, 11:00:14
Post #18





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Da sie. Ale widze juz skasowales kod co miales i nie jestem w stanie ci teraz dopisac poprawki.


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

"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
silverwind
post 14.01.2016, 14:50:02
Post #19





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 8.02.2013

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


  1. <tr>
  2. <th>Właściciel</th>
  3. <th>Rodzaj</th>
  4. <th>Adress</th>
  5. <th>Najemca</th>
  6. <th>Saldo</th>
  7. <th>Akcja</th>
  8. </tr>
  9. </thead>
  10. <tr>
  11. {% for details in QueryBuilder %}
  12. {% for detailsowner in details.owner %}
  13. <th>{{detailsowner.name}}</th>
  14.  
  15. {% endfor %}
  16. {% endfor %}
  17. {% for details in QueryBuilder %}
  18. {% for detailsowner in details.owner %}
  19. {% for detailsproperty in detailsowner.property%}
  20. <th>{{detailsproperty.name}}</th>
  21. <th>{{detailsproperty.adress}}</th>
  22. {% endfor %}
  23. {% endfor %}
  24. {% endfor %}
Go to the top of the page
+Quote Post
nospor
post 14.01.2016, 16:31:26
Post #20





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Chce ci tylko pokazac schemat jak to sie mniej wiecej robi
Wybacz za pseudoif w kodzie, ale nie pamietam juz skladni ifow w szablonach
Kod
                   {% for details in QueryBuilder %}    
                       {% for detailsowner in details.owner %}
<tr>
                           <td>{{detailsowner.name}}</td>
                           {% for detailsproperty in detailsowner.property%}
                            {JESLI to jest kolejny (to jest drugi lub dalszy) element w detailsowner.property}
                               </tr>
                               <tr>
                                   <td>Puste pole na WLASCICIELA</td>
                             {KONIEC JESLI}
                           <td>{{detailsproperty.name}}</td>
                           <td>{{detailsproperty.adress}}</td>
                        {% endfor %}
</tr>
                       {% endfor %}
                   {% endfor %}

Mniej wiecej cos w ten desen


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

"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

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

 



RSS Wersja Lo-Fi Aktualny czas: 24.06.2025 - 12:55