我有两个文档管理器dm1和dm2,以及一个名为AcmeBundle的捆绑包,在捆绑包中,我有很多类,有些以"FirstClass"开头,有些以"SecondClass"开头,还有一些其他类。例如,我有
头等舱1.php,
头等舱2.php,
二等1.php,
二等舱2.php
随机.php
我需要的是类以 dm1 和 dm2 管理的"FirstClass"和"SecondClass"开头,以及仅由 dm1 管理的其他类
我试过使用prifix
dm1:
connection: dm1
...
auto_mapping: false
mappings:
MyAcmeBundle: ~
dm2:
connection: dm2
...
auto_mapping: false
mappings:
MyAcmeBundle:
prefix: My'AcmeBundle'Document'FirstClass
但它仅适用于一个前缀,如果我添加另一个前缀,它将不起作用。有人知道如何做到这一点吗?
您可以为文稿管理器定义多个映射,每个映射都有不同的前缀:
dm2:
connection: dm2
...
auto_mapping: false
mappings:
FirstClasses:
prefix: My'AcmeBundle'Document'FirstClass
SecondClasses:
prefix: My'AcmeBundle'Document'SecondClass
缺点是,如果您使用Bundle:DocumentName
表示法,则需要记住正确的前缀,但是Doctrine与DocumentName::class
一起工作得很好,例如,PHPStorm(在我看来(更干净,更好地支持。