Symfony KnpPaginator和本机查询

Symfony KnpPaginator和本机查询,symfony,doctrine-orm,bundle,nativequery,knppaginator,Symfony,Doctrine Orm,Bundle,Nativequery,Knppaginator,我在Symfony2项目中使用KnpPaginatorBundle。当我尝试将Doctrine 2本机查询传递给paginator实例时,出现错误: One of listeners must count and slice given target 有人举过一些例子来说明如何正确实现本机查询吗 在bundle的文档中,我看到了示例(),但仅针对文件系统,我不知道如何将其转换为db查询 你能帮忙吗 编辑 我的问题是: SELECT a.*, highest_rated_book.* FRO

我在Symfony2项目中使用KnpPaginatorBundle。当我尝试将Doctrine 2本机查询传递给paginator实例时,出现错误:

One of listeners must count and slice given target
有人举过一些例子来说明如何正确实现本机查询吗

在bundle的文档中,我看到了示例(),但仅针对文件系统,我不知道如何将其转换为db查询

你能帮忙吗

编辑

我的问题是:

SELECT a.*, highest_rated_book.*
  FROM authors a
  LEFT JOIN (SELECT * FROM books b ORDER BY b.rate DESC) AS highest_rated_book
  ON a.id = highest_rated_book.author_id
  GROUP BY highest_rated_book.author_id
  ORDER BY a.id;
和表格:

author (id, first_name, last_name)
books (id, title, rate, author_id)

不幸的是,该捆绑包不适用于本机查询。最好的解决方案(尽管它加载了许多不需要的行)是从查询中获取结果并对结果数组进行分页


大约五分钟前我遇到了这个问题,参考:

我认为这不是“最佳解决方案”。最好的解决办法是以不同的方式处理。我们有1000万行的表需要分页。