阅读或编写Symfony 2中的实体管理器


Read or write Entity Managers in Symfony 2

我将Symfony2用于具有读写数据库的应用程序。

我已经在配置文件中定义了不同的连接和实体管理器。当我在控制器和类似的存储库中创建实体对象时,它运行良好

$em = $this->getDoctrine()->getEntityManager('write');

现在的问题是,我还创建了一些服务,在服务论证中,我给了实体管理器这样的

services:
    app.counterservices:
        id: app.counterservices
        class: AppBundle'Services'CounterService
        arguments: ["@doctrine.orm.entity_manager"]

我如何在服务中定义要使用"读取"或"写入"的实体管理器?

在您的服务配置中,选择您想要的实体管理器,如

services:
    app.counterservices:
        id: app.counterservices
        class: AppBundle'Services'CounterService
        arguments: ["@doctrine.orm.write_entity_manager"]

services:
    app.counterservices:
        id: app.counterservices
        class: AppBundle'Services'CounterService
        arguments: ["@doctrine.orm.read_entity_manager"]