security.yml中的未知实体命名空间与Symfony中的自定义实体文件夹2
问题描述:
我有我的模型实体保存在src/AppBundle/Model/Entity
。security.yml中的未知实体命名空间与Symfony中的自定义实体文件夹2
你可以理解,我有自己的实体文件夹(在模型文件夹中)。
这是config.yml我的ORM的设置:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
auto_mapping: false
mappings:
user:
type: annotation
dir: %kernel.root_dir%/../src/AppBundle/Model/Entity
alias: 'Entity'
prefix: AppBundle\Model\Entity
is_bundle: false
我与这些线在我security.yml
一个问题:
providers:
our_db_provider:
entity:
class: AppBundle:User
property: username
# if you're using multiple entity managers
# manager_name: customer
有一些错误:
Unknown Entity namespace alias 'AppBundle'.
我不需要使用什么参考(AppBundle:User
可能不是)。
谢谢你的回答。
答
默认情况下,所有Symfony捆绑包都会有一个很好的别名:XxxBundle
(别名NamespaceOfXxxBundle\Entity
名称空间)。正如你一束不遵循这个惯例并将其存储在Model\Entity
相反,你有两个选择:
- 不要使用别名功能,并通过FQCN:
AppBundle\Model\Entity\User
-
创建新的别名,给它一个好听的名字,并使用它:
doctrine: orm: # ... mappings: user: type: annotation dir: %kernel.root_dir%/../src/AppBundle/Model/Entity alias: App # <-- the alias name prefix: AppBundle\Model\Entity is_bundle: false
App:User
你试过'的appbundle \模式l \ Entity \ User'?您也可以尝试将前缀更改为'AppBundle:'不确定它是否会起作用。 –
谢谢瓦迪姆,我试过了,它工作。对不起,我是Symfony的初学者,有时候我在基础知识方面有问题(路由,参考等) –