1

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

我已经在我的配置文件中定义了不同的连接和实体管理器。当我在控制器和存储库中创建实体对象时它工作正常

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

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

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

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

4

1 回答 1

0

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

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"]
于 2012-08-27T07:55:12.393 回答