我按照官方教程安装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的用户
我的配置有什么问题?
答案 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。