我已经使用SonataUserBundle扩展了SonataEasyExtendsBundle,并删除了一些字段。正确地创建了数据库表。问题是当尝试在Admin界面中添加用户时(使用SonataAdminBundle)。我得到了:
请在
phone中为Sonata\UserBundle\Admin\Entity\UserAdmin字段定义一个类型
这使我得出结论,Admin没有选择我的自定义类,而是使用默认的类。
我的config.yml:
sonata_user:
security_acl: false
manager_type: orm
class:
user: Application\Sonata\UserBundle\Entity\User
group: Application\Sonata\UserBundle\Entity\Group我的Application\Sonata\UserBundle\Resources\services.xml
<service id="sonata.user.admin.user" class="Application\Sonata\UserBundle\Admin\Entity\UserAdmin">
<tag name="sonata.admin" manager_type="orm" group="%sonata.user.admin.groupname%" label="users" label_catalogue="SonataUserBundle" label_translator_strategy="sonata.admin.label.strategy.underscore" />
<argument />
<argument>Application\Sonata\UserBundle\Entity\User</argument>
<argument>SonataAdminBundle:CRUD</argument>
<call method="setUserManager">
<argument type="service" id="fos_user.user_manager" />
</call>
<call method="setTranslationDomain">
<argument>%sonata.user.admin.user.translation_domain%</argument>
</call>
</service>问题是我如何向Sonata注册我的用户类,并最终取消注册默认类?
发布于 2014-04-13 19:13:43
我通过在/app/config/config.yml文件中添加适当的导入来解决这个问题。
#/app/config/config.yml
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: '@ApplicationSonataUserBundle/Resources/config/services.xml' }新类是在上面发布的服务文件中定义的,它不会被自动拾取。
https://stackoverflow.com/questions/15722272
复制相似问题