【发布时间】:2014-01-19 20:24:06
【问题描述】:
我正在尝试将 KnpPaginatorBundle 用于 Symfony2,您可以找到 here。
当我尝试执行以下操作时:
$em = $this->getDoctrine()->getManager();
$query = $em->getRepository('VolleyScoutBundle:Users')->findAll();
$paginator = $this->get('knp_paginator');
$pagination = $paginator->paginate(
$query,
$this->get('request')->query->get('page', 1)/*page number*/,
10/*limit per page*/
);
// parameters to template
return $this->render('VolleyScoutBundle:Admin:accounts.html.twig', array('pagination' => $pagination));
我总是收到这样的错误:One of listeners must count and slice given target。当我在分页之前转储查询时,我只是从用户那里得到一个包含实体对象的数组..
我做错了什么?
【问题讨论】:
-
您应该将查询而不是结果集传递给分页器。
-
KnpPaginator 可以对
ArrayCollection和array对象以及 @Uriziel 进行分页 - 看看 documenation。 @nielsv 请在您的问题中包含异常和堆栈跟踪。异常源自knplabs/knp-components中的方法Paginator::paginate(...)here。
标签: php symfony pagination knppaginator