可以是存储在其他位置的实体,而不是实体目录中的实体?

时间:2012-02-20 13:31:44

标签: symfony

我正在尝试将实体存储在MyBundle / OtherNamespacePart / Entity目录中。

如果我运行doctrine:schema:create,我会收到以下错误消息:

  

Class MyBundle / Entity / MyEntity不存在且无法加载。

我不明白,为什么忽略“OtherNamespacePart”(应该是MyBundle / OtherNamespacePart / Entity / MyEntity)。我检查了整个项目,如果有所有命名空间和命名正确,在我看来似乎没问题。如果我直接在实体目录中存储实体,它可以工作(只需要删除所有“OtherNamespacePart”)。

控制台命令工具中没有问题,是否需要实体目录中的实体?是否有解决方法或配置选项?

1 个答案:

答案 0 :(得分:15)

您可以通过在config.yml

中提供自定义映射来执行此操作

e.g:

doctrine:
    orm:
        auto_generate_proxy_classes: %kernel.debug%
        auto_mapping: false
        mappings:
            name:
                type: xml
                dir: %kernel.root_dir%/../src/Your/Bundle/Resources/config/doctrine
                alias: MyModels
                prefix: MyBundle\OtherNamespacePart\Entity
                is_bundle: false