2

我知道 Doctrine 带有一个简单的分页器。不幸的是,有关其使用的文档很少。

如何使用它在每页显示 10 个实体?而且,它是处理实际的寻呼机功能,还是仅仅实现跳过/获取功能?

4

2 回答 2

4

就我而言,Doctrine paginator 运行良好。我的 BaseController 中有这个功能(不是来自 Symfony):

protected function getDoctrinePaginator(QueryBuilder $qb, $limit=10)
{
    $page = $this->getRequest()->query->get("page", 1) ;
    $qb ->setFirstResult( ( $page-1 ) * $limit)->setMaxResults($limit) ;

    return new Paginator($qb);
}

在模板中,我有这个:

{% for user in paginator %}
{{ user.name }}
{% endfor %}

您必须手动处理排序和 $page 值(阅读代码),但它易于使用,并且与 knpPaginator 不同,Doctrine 与 -big-joins 一起使用;我有一个有 10-15 个连接和几个子查询的,工作得很好。

于 2013-05-08T13:25:50.533 回答
-1

在您在查询中使用 JOIN 语句之前,Doctrine 寻呼机工作得很好。

尝试使用这个 jQuery 插件进行分页/搜索解决方案

于 2013-05-08T12:48:58.627 回答