31

如何使用最新的 Symfony 和 Doctrine 从控制器内部获取实体管理器?

“The Book”中描述的方式现在被标记为已弃用。什么是现代(正确)方法来做到这一点?

public function someAction()
{
    // getEntityManager() from Doctrine\Bundle\DoctrineBundle\Registry is deprecated
    $entityManager = $this->getDoctrine()->getEntityManager();
    ...
}
4

1 回答 1

53

改为使用$this->getDoctrine()->getManager()

实际上,最好不要让控制器知道您正在使用的持久层。这些东西应该被移到服务层来抽象数据的持久化方式。

于 2012-10-06T22:03:22.693 回答