Symfony/SonataUser - BaseUser 的抽象方法出错
Symfony/SonataUser - Error with abstract method of BaseUser
我正在尝试安装 SonataUserBundle,所以我遵循了文档(并使用 EasyExtendBundle,但我收到此错误:
[Symfony\Component\Debug\Exception\FatalErrorException]
Error: Class Sonata\UserBundle\Entity\BaseUser contains 35 abstract methods and must therefore be declared abstract
or implement the remaining methods (FOS\UserBundle\Model\UserInterface::setUsername, FOS\UserBundle\Model\UserInte
rface::getUsernameCanonical, FOS\UserBundle\Model\UserInterface::setUsernameCanonical, ...)
我没有更改 EasyExtends 生成的用户实体的任何内容...
配置看起来不错:
fos_user:
db_driver: orm
firewall_name: main
user_class: Application\Sonata\UserBundle\Entity\User
group:
group_class: Application\Sonata\UserBundle\Entity\Group
group_manager: sonata.user.orm.group_manager
service:
user_manager: sonata.user.orm.user_manager
我的作曲家:
"symfony/symfony": "2.8.*",
...
"friendsofsymfony/user-bundle": "~1.3",
"sonata-project/admin-bundle": "~2.2",
"sonata-project/doctrine-orm-admin-bundle": "~2.3",
"sonata-project/user-bundle": "^2.2",
有人对此有解决方案吗?
感谢帮助!
fos_user 的配置错误...您必须使用 Sonata 命名空间实体...而不是在应用程序命名空间
中生成的实体
fos_user:
db_driver: orm # can be orm or odm
firewall_name: main
user_class: Sonata\UserBundle\Entity\BaseUser
group:
group_class: Sonata\UserBundle\Entity\BaseGroup
注意 user_class 和 group_class 引用 BaseEntity Sonata Docs
我终于从一个新项目开始,以https://github.com/sonata-project/sandbox为基础(我的项目将使用其他一些奏鸣曲项目)
所以,可能是配置错误...
估计是sonata和friendsofsymfony的版本问题。
我的composer.json是这样的
"sonata-project/easy-extends-bundle": "^2.1",
"sonata-project/user-bundle": "^2.2"
"friendsofsymfony/user-bundle": "^1.3",
"friendsofsymfony/jsrouting-bundle": "^1.6"
也许如果我们能有匹配的版本……
我正在尝试安装 SonataUserBundle,所以我遵循了文档(并使用 EasyExtendBundle,但我收到此错误:
[Symfony\Component\Debug\Exception\FatalErrorException]
Error: Class Sonata\UserBundle\Entity\BaseUser contains 35 abstract methods and must therefore be declared abstract
or implement the remaining methods (FOS\UserBundle\Model\UserInterface::setUsername, FOS\UserBundle\Model\UserInte
rface::getUsernameCanonical, FOS\UserBundle\Model\UserInterface::setUsernameCanonical, ...)
我没有更改 EasyExtends 生成的用户实体的任何内容...
配置看起来不错:
fos_user:
db_driver: orm
firewall_name: main
user_class: Application\Sonata\UserBundle\Entity\User
group:
group_class: Application\Sonata\UserBundle\Entity\Group
group_manager: sonata.user.orm.group_manager
service:
user_manager: sonata.user.orm.user_manager
我的作曲家:
"symfony/symfony": "2.8.*",
...
"friendsofsymfony/user-bundle": "~1.3",
"sonata-project/admin-bundle": "~2.2",
"sonata-project/doctrine-orm-admin-bundle": "~2.3",
"sonata-project/user-bundle": "^2.2",
有人对此有解决方案吗?
感谢帮助!
fos_user 的配置错误...您必须使用 Sonata 命名空间实体...而不是在应用程序命名空间
中生成的实体fos_user:
db_driver: orm # can be orm or odm
firewall_name: main
user_class: Sonata\UserBundle\Entity\BaseUser
group:
group_class: Sonata\UserBundle\Entity\BaseGroup
注意 user_class 和 group_class 引用 BaseEntity Sonata Docs
我终于从一个新项目开始,以https://github.com/sonata-project/sandbox为基础(我的项目将使用其他一些奏鸣曲项目)
所以,可能是配置错误...
估计是sonata和friendsofsymfony的版本问题。 我的composer.json是这样的
"sonata-project/easy-extends-bundle": "^2.1",
"sonata-project/user-bundle": "^2.2"
"friendsofsymfony/user-bundle": "^1.3",
"friendsofsymfony/jsrouting-bundle": "^1.6"
也许如果我们能有匹配的版本……