如何将@session服务注入Symfony2中的自定义EntityManager

时间:2012-05-31 16:05:19

标签: symfony

在我的配置文件中,我定义了自定义实体管理器:

parameters:
    doctrine.orm.entity_manager:
        class: Strict\UserBundle\Entity\Manager\MyEntityManager

是否可以将@session服务(我需要访问getLocale()方法)注入/添加到此实体管理器中? 我试过这个:

parameters:
    doctrine.orm.entity_manager:
        class: Strict\UserBundle\Entity\Manager\MyEntityManager
        arguments: 
            session: "@session"

但它抛出了这个异常:

InvalidArgumentException: You cannot dump a container with parameters that contain references to other services (reference to service "session" found in "/doctrine.orm.entity_manager/arguments/session").

有什么想法吗?

1 个答案:

答案 0 :(得分:16)

参数不允许服务作为参数,你尝试过做同样的事情但使用服务:

service:
   my.entity.manager:
      class: Strict\UserBundle\Entity\Manager\MyEntityManager
      arguments: 
        session: "@session"