首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >symfony+Mapping错误

symfony+Mapping错误
EN

Stack Overflow用户
提问于 2013-03-04 16:13:35
回答 4查看 6.1K关注 0票数 1

我在symfony中实现了FOSUser模块,我已经创建并配置了所有文件,因为tutorial.here是用于映射的config.yml文件。

代码语言:javascript
复制
 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
}
}

它显示以下错误。

代码语言:javascript
复制
 MappingException: The class 'Acme\UserBundle\Entity\User' 
was not found in the chain configured namespaces FOS\UserBundle\Entity

这是我提到自动加载的config.yml文件。它仍然不起作用。

代码语言:javascript
复制
      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
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-03-04 16:25:00

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

1)使用auto_mapping

代码语言:javascript
复制
doctrine:
    orm:
        auto_mapping: true

2)不使用auto_mapping

代码语言:javascript
复制
doctrine:
    orm:     
        mappings:
            AcmeUserBundle: ~

注意,如果你有多个实体管理器,你将不能使用auto_mapping特性。希望这能有所帮助!

票数 7
EN

Stack Overflow用户

发布于 2013-05-26 21:09:47

它还可以帮助:

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

代码语言:javascript
复制
...
new Acme\UserBundle\AcmeUserBundle(),
...
票数 3
EN

Stack Overflow用户

发布于 2013-03-04 16:21:21

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

代码语言:javascript
复制
new FOS\UserBundle\FOSUserBundle()

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15197183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档