其中一位听众必须对给定的目标 + knppaginator symfony2 包进行计数和切片
Posted
技术标签:
【中文标题】其中一位听众必须对给定的目标 + knppaginator symfony2 包进行计数和切片【英文标题】:One of listeners must count and slice given target + knppaginator symfony2 bundle 【发布时间】: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。
【参考方案1】:
我遇到了同样的错误。
除非我使用 Symfony2 的 LTS 版本,否则它似乎对我不起作用:
"symfony/symfony": "2.3.*",
不过,我也使用了可能有帮助的 EventListener:
https://github.com/KnpLabs/KnpPaginatorBundle/blob/master/Resources/doc/custom_pagination_subscribers.md
【讨论】:
以上是关于其中一位听众必须对给定的目标 + knppaginator symfony2 包进行计数和切片的主要内容,如果未能解决你的问题,请参考以下文章
配置 KnpPaginator 以使用 Twitter Bootstrap
Symfony2 - KnpPaginator - AJAX/嵌入式控制器
Symfony 4 - 自定义 KnpPaginator 分页模板?