2012-04-24 123 views
1

我想要将一个表单和formHandler服务注入到我的控制器中。检测Symfony2:范围扩展异常

<services> 
    <service id="acme_core.image_controller" class="Acme\CoreBundle\Controller\ImageController"> 
     <argument type="service" id="session" /> 
     <argument type="service" id="acme_core.image.form" /> 
     <argument type="service" id="acme_core.image.form.handler" /> 
     <argument type="service" id="acme_core.image_manager.default" /> 
    </service> 
</services> 

范围加宽注入:定义“acme_core.image_controller”参照服务“acme_core.image.form.handler”属于范围较窄。通常,将“acme_core.image_controller”移动到作用域“请求”更安全,或者通过注入容器本身来依赖提供者模式,并在每次需要时请求服务“acme_core.image.form.handler”。然而,在罕见的特殊情况下,可能不需要,那么您可以将引用设置为strict = false来消除此错误。

这是什么意思? 我该如何添加tom我的image_controller.xml?

问候

回答

3

,你必须在你的服务标签添加scope="request" e.g

<service id="acme_core.image_controller" class="Acme\CoreBundle\Controller\ImageController" scope="request"> 

欲了解更多信息检查this菜谱条目。