Php 在存储库级别的Doctrine2 ORM中实现分页的最佳实践
我知道,但它在DQL级别工作。我要寻找的是一种在存储库级别实现分页的方法Php 在存储库级别的Doctrine2 ORM中实现分页的最佳实践,php,orm,doctrine-orm,doctrine,pagination,Php,Orm,Doctrine Orm,Doctrine,Pagination,我知道,但它在DQL级别工作。我要寻找的是一种在存储库级别实现分页的方法 我看到的第一种方法是在回购协议中加入分页: 通过使其所有方法接受两个附加参数,$offset和$limit,或 通过在我的回购中实施setOffset和setLimit方法,这些方法将影响所有的find…方法(由于DefaultRepositoryFactory实施,这是不好的) 另一种方法是创建一个ResultBuilder类,如中所示。我真的不喜欢这种方法,因为它适用于预取的结果集,这使得额外的数据检索,即使在条
- 我看到的第一种方法是在回购协议中加入分页:
- 通过使其所有方法接受两个附加参数,
和$offset
,或$limit
- 通过在我的回购中实施
和setOffset
方法,这些方法将影响所有的setLimit
方法(由于find…
实施,这是不好的)DefaultRepositoryFactory
- 通过使其所有方法接受两个附加参数,
- 另一种方法是创建一个
类,如中所示。我真的不喜欢这种方法,因为它适用于预取的结果集,这使得额外的数据检索,即使在条令的延迟加载情况下也是如此ResultBuilder
对于Doctrine2 ORM用户来说,还有哪些其他方法可以解决此问题?我发现的一个可能的解决方案是,如中所述,制作一个相应的过滤器(使用限制语句),并在使用回购的查询方法(包括自定义)之前将该过滤器应用于回购