尝试将FOSUserBundle安装到Symfony2时遇到麻烦

时间:2012-07-09 07:24:11

标签: symfony fosuserbundle

当我尝试安装FOSUserBundle时,我收到以下错误:

Fatal error: Call to undefined method Symfony\Bundle\DoctrineBundle\Registry::getManager() in W:\symproject\app\cache\dev\appDevDebugProjectContainer.php on line 1039

它能是什么?

我还尝试将FOSUserBundle安装到纯粹的Symfony Standart Edition并遇到了同样的问题。

我跟着this documentation

5 个答案:

答案 0 :(得分:9)

您可能已经安装了用于Symfony2.1.x的最新FOSUserBundle 如果您使用的是Symfony2.0.x,请更改您的deps文件:

[FOSUserBundle]
    git=git://github.com/FriendsOfSymfony/FOSUserBundle.git
    target=bundles/FOS/UserBundle
    version=1.2.0

然后重新安装供应商:

php bin/vendors install

答案 1 :(得分:1)

我一直在使用FOS用户软件包很长一段时间,本周末我的自动构建停止了你在这里写的错误。所以对我来说,我找到了解决方案:)

似乎最新版本的FOS User Bundle有一个错误,所以我将其添加到deps.lock文件中:

FOSUserBundle f487dc16cec6003c46542a90d5193761fd91360a

在deps文件中我有:

[FOSUserBundle]
git=http://github.com/FriendsOfSymfony/FOSUserBundle.git
target=bundles/FOS/UserBundle

瞧!它现在有效!

(提交f487d ...刚刚从4天前的提交中选择 - 当我知道它正在工作时)

这应该可以解决您的问题!

答案 2 :(得分:1)

我用作曲家从2.0.16更新到2.1 dev-master,得到了同样的错误...... 我的解决方案:

orm.xml

factory-service="doctrine" factory-method="getManager"

替换为

factory-service="doctrine" factory-method="getEntityManager"

答案 3 :(得分:1)

此外,如果您使用的是Symfony 2.0.x,则不存在 getManager 这样的方法,而是必须使用 getEntityManager 才能使其正常工作。

答案 4 :(得分:0)

我认为你错过了config.yml中的Doctrine ORM映射

教义:     ORM:         auto_generate_proxy_classes:%kernel.debug%         entity_managers:             默认:                 映射:                     FOSUserBundle:〜

试着希望这会有效......