Symfony - 将实体置于任何Bundle之外

时间:2015-12-08 17:02:06

标签: php doctrine-orm symfony

我试图将实体放在我的Symfony项目之外,因为我希望Doctrine实体与其他东西共享。我阅读了doc,并在config.yml

中提出了这个问题
orm:
    auto_generate_proxy_classes: "%kernel.debug%"
    naming_strategy: doctrine.orm.naming_strategy.underscore
    auto_mapping:   false
    mappings:
        backend:
            type:   annotation
            dir:    %kernel.root_dir%/../../common/Backend/Entity
            prefix: Backend\Entity
            alias: Backend
            is_bundle:  false

然而,当我启动应用程序/尝试加载依赖于数据的页面时,我收到此错误:

[Doctrine\Common\Persistence\Mapping\MappingException]  
  Class 'Backend\Entity\PortalUser' does not exist 

我猜我需要告诉Symfony查看目录,但我认为这是由" dir"配置。所以我在这里遗漏了一些东西。

composer.json中的自动加载配置:

"autoload": {
        "psr-4": {
           "": ["src/","../common/"]
        },
        "files": [
            "app/AppKernel.php"
        ]
    },

1 个答案:

答案 0 :(得分:1)

你的composer.json上有什么自动加载配置?这就是失败的原因。