我想要完成的任务:创建一个包含基本Doctrine实体和映射超类的包,使得能够重用该包而不实际使用该实体(并使用映射的超类)。
问题:如果我将实体放在Entity
命名空间中,它们会自动映射到表格中。这对于捆绑A 是好的,但对于捆绑B 则没有。
可重复使用的捆绑映射的超类:
OrderBundle\Entity\BaseOrder
OrderBundle\Entity\BaseOrderDetail
可重复使用的捆绑实体(定义一对多和多对一关联):
OrderBundle\Model\SaleOrder
OrderBundle\Model\SaleOrderDetail
捆绑A 需要OrderBundle
个实体,而无需自定义它们。应该启用映射。
捆绑B 需要OrderBundle
映射,自定义映射的超类(OrderBundle\Entity
)并手动添加关联。映射应该被禁用..
我正在查看食谱How to provide model classes for several Doctrine implementations和How to Define Relationships with Abstract Classes and Interfaces,但我不知道这是否可能。