与FOSUser SonataUser和我的扩展混淆

时间:2012-06-27 11:45:11

标签: symfony fosuserbundle symfony-sonata

我按照官方教程安装FOSUser然后安装SonataUser捆绑包和我的app / Application / Sonata / UserBundle / Entity扩展。

现在我有4个表:fos_user,fos_user_group,fos_user_user和fos_user_user_group。

my security.yml

security:
    providers:
        fos_userbundle:
            id: fos_user.user_manager

我的config.yml

fos_user:
    db_driver: orm
    firewall_name: main
    user_class: Me\UserBundle\Entity\User
#    user_class: Application\Sonata\UserBundle\Entity\User

my /app/Application/Sonata/UserBundle/Resources/config/doctrine/User.orm.xml

...
<entity name="Application\Sonata\UserBundle\Entity\User" table="fos_user_user">
    <id name="id" column="id" type="integer">
        <generator strategy="AUTO" />
    </id>
</entity>
...

我也创建了我的UserBundle,就像它写的fosuser docs一样。

因此用户通过fos_user进行身份验证,但是sonata admin显示来自fos_user_user的用户

我的配置有什么问题?

2 个答案:

答案 0 :(得分:2)

我花了几个小时才发现fos_user和sonata_user都应该在config.yml中注册:

fos_user:
    db_driver: orm
    firewall_name: main
    user_class: App\UserBundle\Entity\User
    group:
        group_class: App\UserBundle\Entity\Group

sonata_user:
    class:
        user:  Me\UserBundle\Entity\User
        group: Me\UserBundle\Entity\Group

答案 1 :(得分:1)

我终于重新启动了整个FOSUser&amp;按照this good tutorial一步一步安装SonataUser / Admin。

我认为我的错误是使用我的捆绑包扩展FOSUser,而Sonata扩展它已经很容易扩展。

所以我完全删除了我的UserBundle。