getRepository与getManager之间的区别是什么?

时间:2017-10-22 11:03:52

标签: symfony doctrine

我用过代码:


    $userRepository = $this->getDoctrine()
                ->getManager()
                ->getRepository(User::class);

但今天在分析一些教程时我发现没有getManager的代码也是一样的


    $userRepository = $this->getDoctrine()
                ->getRepository(User::class);

那么,区别是什么?细节中的魔鬼让我很好奇。

谢谢, →

2 个答案:

答案 0 :(得分:4)

如果您只有一个连接,那就是同样的事情: https://symfony.com/doc/current/doctrine.html#persisting-objects-to-the-database

->getManager()

允许您选择连接。

就个人而言,我总是按惯例使用完整格式;)

答案 1 :(得分:0)

经过研究,我从堆栈中发现了类似案例的旧帖子:

所以:

  1. 过去,getEntityManager() - 自2.1以来已弃用
  2. getEntityManager =我的案例中的getManager
  3. 如果您想使用一个实体,可以跳过getManager