Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony][Symfony2]Paginator nie widzi parametru z tablicy GET
Forum PHP.pl > Forum > PHP > Frameworki
justysia90
Używam https://github.com/KnpLabs/KnpPaginatorBundle
paginator udało mi się zainstalować pojawia się jednak dziwny problem, taki że nie mogę odczytać parametru przesłanego z tablicy $_GET
Sama paginacja wydaje się działać bo jak zmienię domyślnie wyświetlaną stronę pojawia się poprawny wpis, tak samo dla limitu wyświetlanych stron.


Kod kontrolera:
  1. use Symfony\Bundle\FrameworkBundle\Controller\Controller;
  2.  
  3. class PressController extends Controller
  4.  
  5. public function newsAction(Request $request)
  6. {
  7. $articles = $this
  8. ->getDoctrine()
  9. ->getEntityManager()
  10. ->getRepository('SiteWebsiteBundle:Article')
  11. ->findBy(array('type' => 'news'), array('date' => 'desc'), 4);
  12.  
  13. /* start paginator section */
  14. $paginator = $this->get('knp_paginator');
  15. $pagination = $paginator->paginate(
  16. $articles,
  17. $this->get('request')->query->get('page', 4)/*page number*/,
  18. 1/*limit per page*/
  19. );
  20.  
  21. var_dump($request->query->get('page')); //wyświetla null
  22.  
  23. return $this->render('SiteWebsiteBundle:Press:news.html.twig', array(
  24. 'articles' => $articles,
  25. 'pagination' => $pagination,
  26. ));
  27. }


Kod widoku:
  1. <h2>Aktualności</h2>
  2. {% set base = app.request.getBasePath() %}
  3.  
  4. {% for article in pagination %}
  5. <article>
  6. <div class="article-image">
  7. {% if article.hasImage %}
  8. <img
  9. src="{{ base }}/files/articles/{{ article.type }}/{{ article.id % 100 }}/{{ article.id }}.jpg"
  10. alt="{{ article.title }}"
  11. />
  12. {% endif %}
  13. </div>
  14. <div class="article-content">
  15. <h3>{{ article.title }}<small>,
  16. {{ article.date.format('m.Y') }}</small></h3>
  17. <div>{{ article.brief|raw }}</div>
  18. </div>
  19. </article>
  20. {% endfor %}
  21.  
  22. {# display navigation #}
  23. <div class="navigation">
  24. {{ knp_pagination_render(pagination) }}
  25. </div>



EDIT
Już sobie poradziłam, pojawił się jednak kolejny problem jak umiescić na jednej stronie dwie paginacje, obydwie korzystają z tej samej zmiennej page_name: page ustawianej w pliku config.xml
Wystarczy mi żebym wiedziała jak 'podać' nową zmienną dla drugiego paginatora.
pyro
Cytat(justysia90 @ 6.06.2013, 16:22:45 ) *
  1. public function newsAction(Request $request)


Cytat
  1. $this->get('request')->query->get('page', 4)/*page number*/,


questionmark.gif

>
  1. $request->query->get('page');
justysia90
Odnośnie mojego EDIT w głównym poście
Zrobiałam var_dump($paginator) i tam są niby te dane tylko, że jako prywatne lub protected także zmienić ich nie mogę w dokumentacji też nic nie widzę na ten temat :/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.