symfony+;映射错误

symfony+;映射错误,symfony,symfony-2.1,symfony-2.2,Symfony,Symfony 2.1,Symfony 2.2,我正在我的symfony中实现FOSUser模块,我已经创建并配置了教程中的所有文件 namespace Acme\UserBundle\Entity; use FOS\UserBundle\Entity\User as BaseUser; use Doctrine\ORM\Mapping as ORM; class User extends BaseUser { protected $id; public function __construct() { paren

我正在我的symfony中实现FOSUser模块,我已经创建并配置了教程中的所有文件

 namespace Acme\UserBundle\Entity;

 use FOS\UserBundle\Entity\User as BaseUser;
 use Doctrine\ORM\Mapping as ORM;


 class User extends BaseUser
 {

protected $id;

public function __construct()
{
    parent::__construct();
    // your own logic
}
}
它显示以下错误

 MappingException: The class 'Acme\UserBundle\Entity\User' 
was not found in the chain configured namespaces FOS\UserBundle\Entity
这是我的config.yml文件,我提到了自动加载。但它仍然不起作用

      imports:
- { resource: parameters.yml }
- { resource: security.yml }

  framework:
 #esi:             ~
 #translator:      { fallback: %locale% }
 secret:          %secret%
 router:
    resource: "%kernel.root_dir%/config/routing.yml"
    strict_requirements: %kernel.debug%
form:            ~
csrf_protection: ~
validation:      { enable_annotations: true }
templating:
    engines: ['twig']
    #assets_version: SomeVersionScheme
default_locale:  "%locale%"
trusted_proxies: ~
session:         ~
fragments:       ~

# Twig Configuration
twig:
debug:            %kernel.debug%
strict_variables: %kernel.debug%

 # Assetic Configuration
 assetic:
debug:          %kernel.debug%
use_controller: false
bundles:        [ ]
#java: /usr/bin/java
filters:
    cssrewrite: ~
    #closure:
    #    jar: %kernel.root_dir%/Resources/java/compiler.jar
    #yui_css:
    #    jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar

  # Doctrine Configuration
doctrine:
dbal:
    driver:   %database_driver%
    host:     %database_host%
    port:     %database_port%
    dbname:   %database_name%
    user:     %database_user%
    password: %database_password%
    charset:  UTF8
    # if using pdo_sqlite as your database driver, add the path in parameters.yml
    # e.g. database_path: %kernel.root_dir%/data/data.db3
    # path:     %database_path%

orm:
    auto_generate_proxy_classes: %kernel.debug%
    auto_mapping: true

# Swiftmailer Configuration
swiftmailer:
transport: %mailer_transport%
host:      %mailer_host%
username:  %mailer_user%
password:  %mailer_password%
spool:     { type: memory }
fos_user:
db_driver: orm 
firewall_name: main
user_class: Acme\UserBundle\Entity\User

将以下行添加到
app/AppKernel.php
文件的bundle数组中:

new FOS\UserBundle\FOSUserBundle()

这是为Symfony注册该名称空间。

将以下行添加到
app/AppKernel.php
文件的绑定数组中:

new FOS\UserBundle\FOSUserBundle()

这是为Symfony注册该名称空间。

好的,这应该很容易。您需要在
config.yml
中启用
auto_mapping
,或者在以下位置手动指定“AcmeUserBundle:~”:

1) 使用自动映射

doctrine:
    orm:
        auto_mapping: true
doctrine:
    orm:     
        mappings:
            AcmeUserBundle: ~
2) 没有自动映射

doctrine:
    orm:
        auto_mapping: true
doctrine:
    orm:     
        mappings:
            AcmeUserBundle: ~
请注意,如果您有多个实体管理器,您将无法使用
自动映射
功能。
希望这有帮助

好的,这应该很容易。您需要在
config.yml
中启用
auto_mapping
,或者在以下位置手动指定“AcmeUserBundle:~”:

1) 使用自动映射

doctrine:
    orm:
        auto_mapping: true
doctrine:
    orm:     
        mappings:
            AcmeUserBundle: ~
2) 没有自动映射

doctrine:
    orm:
        auto_mapping: true
doctrine:
    orm:     
        mappings:
            AcmeUserBundle: ~
请注意,如果您有多个实体管理器,您将无法使用
自动映射
功能。 希望这有帮助

它还可以帮助:

添加到您的app/AppKernel.php中:

...
new Acme\UserBundle\AcmeUserBundle(),
...
它还可以帮助:

添加到您的app/AppKernel.php中:

...
new Acme\UserBundle\AcmeUserBundle(),
...
我的解决方案:

../Entity/User.php中的更改

名称空间Acme\UserBundle\Entity;名称空间为Acme\Bundle\UserBundle\Entity

和app/config.yml中的更改

用户\u类:Acme\UserBundle\Entity\user with
用户\u类:Acme\Bundle\UserBundle\Entity\user

尊敬的朋友,我的解决方案:

../Entity/User.php中的更改

名称空间Acme\UserBundle\Entity;名称空间为Acme\Bundle\UserBundle\Entity

和app/config.yml中的更改

用户\u类:Acme\UserBundle\Entity\user with
用户\u类:Acme\Bundle\UserBundle\Entity\user


尊敬的朋友,这是我的确认。yml请看一下,我提到了自动寄存:是的,但仍然有一些错误,所以您启用了自动映射。您可以尝试关闭它并手动添加这些捆绑包吗?在更改后,请不要忘记添加
FOSUserBundle
“告诉获取新错误”映射异常:“FOS\UserBundle\Entity\User”的子类“Acme\UserBundle\Entity\User”不是有效的实体或映射的超类。“我假设您已设法解决了一个问题。”。你能写下原因吗?:)这是我的确认。yml请看一下,我提到了自动寄存:是的,但仍然有一些错误,所以您启用了
自动映射。您可以尝试关闭它并手动添加这些捆绑包吗?在更改后,请不要忘记添加
FOSUserBundle
“告诉获取新错误”映射异常:“FOS\UserBundle\Entity\User”的子类“Acme\UserBundle\Entity\User”不是有效的实体或映射的超类。“我假设您已设法解决了一个问题。”。你能写下原因吗?:)对不起,伙计,不是根据堆栈溢出的缩进,但重要的是我将得到的错误。Thankstory buddy不是根据堆栈溢出的缩进,但重要的是我将得到的错误。谢谢!我遇到了同样的问题。我刚刚为我正在做的游戏(帝王王朝)创建了一个全新的捆绑包,我将用户类定位在
名称空间Xmontero\empires\UserBundle\Entity下尽管如此,在本教程之后,我集中精力将
FOSUserBundle
添加到内核中,而我完全忘记了将我的
新的Xmontero\empires\UserBundle\xmonteroempersuserbundle(),
添加到
AppKernel.php
——使用SF2 3年,却忘记了类似的事情!天哪!不可能!!!对我遇到了同样的问题。我刚刚为我正在做的游戏(帝王王朝)创建了一个全新的捆绑包,我将用户类定位在
名称空间Xmontero\empires\UserBundle\Entity下尽管如此,在本教程之后,我集中精力将
FOSUserBundle
添加到内核中,而我完全忘记了将我的
新的Xmontero\empires\UserBundle\xmonteroempersuserbundle(),
添加到
AppKernel.php
——使用SF2 3年,却忘记了类似的事情!天哪!不可能!!!