在symfony2中设置表单配置,使其类似于Sylius


Setting up orm configuration in symfony2 to be similar to Sylius

我在使用Symfony2设置原则ORM配置时遇到了困难。我正在使用yml设置ORM文件。

我看过几个开源Symfony2项目(主要是Sylius),规范似乎是将实体放在捆绑包之外的一个名为组件的文件夹中,但将ORM定义放在捆绑包中。谁能建议一些有用的资源来帮助我设置这个?默认情况下,似乎需要我的实体在bundle中,而我不想这样做,因为我的一些实体有跨多个bundle的作用域。

我注意到在文档中你可以单独配置实体管理器,但我看不出下面的配置选项如何实现我所追求的,特别是因为实体可能不都共享相同的前缀:

mappings:
    AcmeOrderBundle:
        type:              ~
        dir:               ~
        alias:             ~
        prefix:            ~
        is_bundle:         ~

如果有任何帮助,我将不胜感激,如果有必要,我可以提供更多的信息。

下面是一个使用几个选项的例子:

    entity_managers:
        games:
           connection: games
           mappings:
                CeradGameBundle: 
                    type:   yml
                    dir:    Resources/config/doctrine2
                    prefix: Cerad'Bundle'GameBundle'Doctrine'Entity

dir指向表单在哪里。Yml文件激活。如图所示,它是相对于bundle的。但是如果你愿意,你可以用一个绝对路径来替换它。

前缀基本上是实体的命名空间。

就多个前缀而言,您可以为给定的管理器创建多个映射。