2017-02-07 4 views
0

Я установил пакет paginator knp в моем проекте, и я последовал за установкой tuto в git-хабе, а затем все работает, но в моем контроллере есть проблема. Я установил ограничение на страницу на 1 элемент, и я нахожу, когда im переключает страницу он показывает мне 2 пунктовKnp paginator bundle не работает отлично при переключении страниц symfony 3?

это мой контроллер

public function membreGroupeAction(Request $request) 
{ 
    $em = $this->getDoctrine()->getManager(); 
    $str = $em->getRepository("GroupGroupBundle:Groupe")->findOneBy(array('id'=>1)); 
    $member = $em->getRepository("GroupGroupBundle:Groupe")->getmemberlist($str->getMembres()); 

    $paginator = $this->get('knp_paginator'); 
    $res = $pagination = $paginator->paginate(
     $member, /* query NOT result */ 
     $request->query->getInt('page', 1),  /*page number*/ 
     $request->query->getInt('page', 1)  /*limit per page*/ 
    ); 


    return $this->render('@GroupGroup/layout/membres.html.twig',array("mem"=>$res)); 

} 

и это моя точка зрения веточка

{% extends '@GroupGroup/Group/groupe_mur_base.html.twig' %} 
{% block panel %} 

<div class="jumbotron list-content" style="display: block;"> 
    <ul class="list-group"> 
     <li href="#" class="list-group-item title"> 
      Liste des Membres 
     </li> 
     {% for i in mem %} 
      <li href="#" class="list-group-item text-left" id="listmembre" style="display: block;"> 

       <div class="image"> 
        <img class="img-thumbnail" src="{{ i.profile_pic }}"> 
        <span id="membername">{{ i.nom }} {{ i.prenom }}</span> 
        <div><button id="btnajout" class="btn btn-primary">Ajouter</button></div> 

       </div> 
       <div class="break"></div> 
      </li> 
     {% endfor %} 




     <li href="#" class="list-group-item text-left"> 
      <div class="navigation text-center" > 
       {{ knp_pagination_render(mem) }} 
      </div> 
     </li> 
    </ul> 
</div> 
    {% endblock %} 

это мой выход на первой странице first page

и это мой выход после нажатия на 2-й странице 2nd page output

ответ

0

Вы не устанавливая предел в 1, вы устанавливаете его на текущей странице.

$res = $pagination = $paginator->paginate(
    $member, /* query NOT result */ 
    $request->query->getInt('page', 1),  /*page number*/ 
    $request->query->getInt('page', 1) // <-- right here 
); 

Изменить отмеченные линии только 1, и вы должны быть хорошо.

+0

оооо Thnks много на самом деле я не получил его в первый раз Thnks человек –

+0

я получил сообщение об ошибке в нижней части моего проекта, его перевод или что-то в этом роде, что вызвало этот вопрос –

+0

Пожалуйста, создайте новый вопрос для этого, он не связан с вашей лимитированной проблемой. – aferber

0

это правильный код я нашел мою ошибку все работает совершенно теперь

$paginator = $this->get('knp_paginator'); 
    $res = $pagination = $paginator->paginate(
     $member, /* query NOT result */ 
     $request->query->getInt('page', 1),  /*page number*/ 
     $request->query->getInt('limit', 1)  /*limit per page*/ 
    ); 
Смежные вопросы