【问题标题】:Get non-default EM in Symfony2 test在 Symfony2 测试中获取非默认 EM
【发布时间】:2012-06-07 17:58:42
【问题描述】:

我有一个 Symfony2 单元测试,其中我得到这样的实体管理器:

$this->_em = $kernel->getContainer()->get('doctrine.orm.entity_manager');

这对 default 实体管理器很有效,但我想获得另一个名为 core 的实体管理器,除了 default 之外,它还存在。我该怎么做?

我只是为了踢球而尝试过,但没有成功:

$this->_em = $kernel->getContainer()->get('doctrine.orm.entity_managers.core');

【问题讨论】:

  • get('doctrine.orm.core_entity_manager') 也应该可以工作。如果您想将核心 em 传递给服务,这很有用。 php console container:debug 也是一个有用的命令。

标签: symfony doctrine-orm


【解决方案1】:

试试这样:

$kernel->getContainer()->get('doctrine')->getEntityManager('core')

你应该阅读this page

【讨论】:

  • 它不喜欢它。 Fatal error: Call to undefined method appTestDebugProjectContainer::getDoctrine() in /home/jason/pressbox/src/VNN/PressboxBundle/Tests/Entity/UserTest.php on line 16
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-08-02
  • 2012-05-14
  • 1970-01-01
  • 2017-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多