2016-04-03 12 views
-1

私はそこに21の投稿を持つmysqlデータベースブログを持っています。 私は$ maxPerPage = '3'を設定しました。だから私は7ページを取得しますが、4ページから次のエラーが発生します:Pagerfanta symfonyページネーミング

OutOfRangeCurrentPageException:ページ "4"が存在しません。 currentPageには "3"

劣るなければなりません。ここに私のコードです:

public function indexAction($page) 

{

$maxPerPage = '3'; 
$currentPage = $page; 

$entityManager = $this->getDoctrine()->getManager(); 
$queryBuilder = $entityManager->createQueryBuilder() 
->select(array('u')) // string 'u' is converted to array internally 
->from('AppBundle:Blog', 'u'); 
$adapter = new DoctrineORMAdapter($queryBuilder); 
$pagerfanta = new Pagerfanta($adapter); 
if (!$page) $currentPage = '1'; 
try { 
    $pagerfanta->setCurrentPage($currentPage); 
} 
catch(NotValidCurrentPageException $e) { 
    throw new NotFoundHttpException('Illegal page'); 
} 
$pagerfanta->setMaxPerPage($maxPerPage); // 10 by default 






//$textblog = $this->getDoctrine() 
    //->getRepository('AppBundle:Blog') 
    //->find($page); 


return $this->render('textblog/blog.html.twig',array('pagerfanta' => $pagerfanta)); 

}

誰も助けてくださいことはできますか?

答えて

0

愚かな私...

$pagerfanta->setMaxPerPage($maxPerPage); 

このコードは

'もし' の前にする必要があります