5

我正在尝试将@validator 注入到我的服务中,但是 LiipFunctionalTestBundle 在注入时会覆盖该服务。

admin.image_service:
    class: AdminBundle\Service\ImageService
    arguments: ["@validator", "@doctrine.orm.admin_entity_manager", "@image_storage_filesystem"]

导致错误

必须是 Symfony\Component\Validator\Validator\RecursiveValidator 的实例,Liip\FunctionalTestBundle\Validator\DataCollectingValidator 的实例

运行php bin/console debug:container导致

liip_functional_test.validator:Liip\FunctionalTestBundle\Validator\DataCollectingValidator

验证器:“liip_functional_test.validator”的别名

有没有办法解决这个问题,而不是删除 liip 并重构我的所有测试?

4

1 回答 1

6

在您的服务中,您应该输入Interface不确切的类别。

InstdeadSymfony\Component\Validator\Validator\RecursiveValidator使用Symfony\Component\Validator\Validator\ValidatorInterface- 由两个类(Symfony 和 Liip)实现。

于 2016-03-08T19:36:00.503 回答