ZF2覆盖EntityManager& Doctrine实体命名空间别名

时间:2014-05-20 14:02:03

标签: php doctrine-orm zend-framework2

如何在ZF2中覆盖EntityManager

MyEntityManager extends \Doctrine\ORM\EntityManager {

}

使用后

$this->getServiceLocator()->get('Doctrine\ORM\EntityManager')

$this->getServiceLocator()->get('doctrine.entitymanager.orm_default')

我将获得MyEntityManager。

修改 在评论中,我还询问了如何为实体名称空间创建别名(快捷方式)。

getRepository('Application\Entity\Some\Very\Nested\MyEntity')
getRepository('NestedShortcut:MyEntity')

1 个答案:

答案 0 :(得分:1)

Check this answer.这就是你想要的吗?

编辑:

要回答您的命名空间问题:

$config = $entityManager->getConfiguration();
$config->addEntityNamespace('MyNested', 'Application\Entity\Some\Very\Nested');
$myNestedEntity = $entityManager->getRepository('MyNested:Entity');

谨防分号:而不是斜杠\