我有一个“发布”实体,我希望用户投票支持这些帖子。经过身份验证和匿名用户的投票存储在单独的数据库表中,因此有两个单独的“VoteAnonymous”和“VoteAuthenticated”实体实现相同的接口。
现在我在“Post”实体及其“targetEntity”选项中定义引用时遇到问题。我想知道Doctrine2是否可以选择其中一个多态类作为其字段的目标实体。
感谢您的帮助。
P.S。我无法重新设计数据库,这个数据结构有大量的遗留代码。
答案 0 :(得分:0)
Doctrine支持继承,所以你应该创建两个不同的实体,它们共享一个共同的parrent,比如AbstractVote
,它定义了所有的属性。
请参阅this answer - 它包含此类结构的示例。