Symfony将Doctrine Paginator传递给服务
问题描述:
我想在symfony中的服务中取消类Doctrine \ ORM \ Tools \ Pagination \ Paginator,因此服务返回此类的实例不存在。通过最佳实践,我可以直接传递类或创建返回此类实例的服务。Symfony将Doctrine Paginator传递给服务
答
我建议使用Factory Method pattern创建一个服务,用所需参数实例化Paginator类(Query/QueryBuilder和fetchJoinCollection)并将其注入到类中。使用这种方法将帮助您在单元测试您的服务时模拟Paginator对象。
答
创建私人服务如parametre
services:
your.service.name:
class: AppBundle\Services\YourClassName
arguments: ['@doctrine.services.paginator']
doctrine.services.paginator:
class: Doctrine\ORM\Tools\Pagination\Paginator
public: false
但分页程序需要构造parametre – spinoza