2017-09-24 78 views
0

我想在symfony中的服务中取消类Doctrine \ ORM \ Tools \ Pagination \ Paginator,因此服务返回此类的实例不存在。通过最佳实践,我可以直接传递类或创建返回此类实例的服务。Symfony将Doctrine Paginator传递给服务

回答

1

我建议使用Factory Method pattern创建一个服务,用所需参数实例化Paginator类(Query/QueryBuilder和fetchJoinCollection)并将其注入到类中。使用这种方法将帮助您在单元测试您的服务时模拟Paginator对象。

1

创建私人服务如parametre

services: 
    your.service.name: 
     class: AppBundle\Services\YourClassName 
     arguments: ['@doctrine.services.paginator'] 

    doctrine.services.paginator: 
     class: Doctrine\ORM\Tools\Pagination\Paginator 
     public: false 
+0

但分页程序需要构造parametre – spinoza