我与这里的服务定义使用包含在同一个文件内的参数为class
参数,像这样一个services.yml
捆绑:Symfony的不尊重覆盖类参数测试环境
parameters:
application.servicename.class: Application\Service\ServiceName
services:
application.servicename:
class: %application.servicename.class%
现在我想覆盖我的测试环境的服务类。但是,覆盖config_test.yml
中的参数不会导致重写的类的对象被实例化。
加入以下config_test.yml
:
parameters:
application.servicename.class: Application\Mock\Service\ServiceName
...仍然使服务从Application\Service\ServiceName
被instantieted。如果我尝试将application.servicename.class
作为参数传递给服务并将其转储到构造函数中,则会显示覆盖值Application\Mock\Service\ServiceName
。
为什么Symfony在准备服务时不尊重服务类的重写值?