php - 如何更改 symfony 2 doctrine 映射器以使用我的自定义目录而不是包下的实体目录

标签 php entity-framework symfony doctrine-orm entity

我在我的 symfony 2.3 应用程序中使用了 doctrine。我想使用像

这样的文件夹结构
/MyBundleName/User/User.php

对于我的实体。

问题:

我是否可以直接显式映射 doctrine ORM 以使用显式目录,而不是默认到我的 Bundle 的 Entity 目录?

我想将所有相关文件保存在各自的目录中,例如 ProductProvider

/MyBundleName/Product/ProductProvider.php

如有任何帮助,我们将不胜感激。

最佳答案

只是跟进@Imanol 的正确答案,可以将您的实体放在一个实体管理器下的多个目录中:

doctrine:
  orm:
    default_entity_manager:       default
    auto_generate_proxy_classes: %kernel.debug%

    entity_managers:

        default:
            connection: default
            mappings:

        test01:
            connection: test01
            mappings:
              product:
                type:      yml
                dir:       %kernel.root_dir%/../src/Cerad/Bundle/Test01Bundle/Product
                prefix:    Cerad\Bundle\Test01Bundle\Product
                alias:     Product
                is_bundle: false
              user:
                type:      yml
                dir:       %kernel.root_dir%/../src/Cerad/Bundle/Test01Bundle/User
                prefix:    Cerad\Bundle\Test01Bundle\User
                alias:     User
                is_bundle: false

不要担心 is_bundle: false 条目。实体仍然可以捆绑在一起。教义不在乎。如果您想知道,别名参数可让您执行以下操作:

$repo = $em->getRepository("Product:Product");

关于php - 如何更改 symfony 2 doctrine 映射器以使用我的自定义目录而不是包下的实体目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18503093/

相关文章:

用于 Azure AD 租户/用户计数的 PHP Api

c# - Entity Framework Code First 支持这种映射吗?

c# - 如何使用 linq to entities 将数据绑定(bind)到 asp.net treeview?

testing - symfony WebTestCase 客户端不发送发布数据

php - 如何在 Symfony2/Silex 中捕获错误和异常?

php - 从文本文件中读取一行,然后将其删除

javascript - 单击服务复选框时隐藏和显示事件复选框

php - ajax没有从mysql数据库返回值

c# - Entity Framework Fluent API 映射

php - Symfony 4 session 过早过期