security.yml中的未知实体命名空间与Symfony中的自定义实体文件夹2

问题描述:

我有我的模型实体保存在src/AppBundle/Model/Entitysecurity.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可能不是)。

谢谢你的回答。

+0

你试过'的appbundle \模式l \ Entity \ User'?您也可以尝试将前缀更改为'AppBundle:'不确定它是否会起作用。 –

+0

谢谢瓦迪姆,我试过了,它工作。对不起,我是Symfony的初学者,有时候我在基础知识方面有问题(路由,参考等) –

默认情况下,所有Symfony捆绑包都会有一个很好的别名:XxxBundle(别名NamespaceOfXxxBundle\Entity名称空间)。正如你一束不遵循这个惯例并将其存储在Model\Entity相反,你有两个选择:

  1. 不要使用别名功能,并通过FQCN:AppBundle\Model\Entity\User
  2. 创建新的别名,给它一个好听的名字,并使用它:

    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