【发布时间】:2011-10-23 22:18:36
【问题描述】:
如何使用 Doctrine 2 创建传统的多态关系?
我已经阅读了很多建议使用单表继承的答案,但我看不出这对我的情况有何帮助。这是我正在尝试做的事情:
我有一些实用实体,例如地址、电子邮件和电话号码。
我有一些“可联系”实体,例如客户、雇主、企业。其中每一个都应包含与上述实用程序实体的 OneToMany 关系。
理想情况下,我想创建一个名为“ContactableEntity”的抽象基类,其中包含这些关系,但我知道不可能将 OneToMany 关系放在具有原则的映射超类中——这很好。
但是,我仍然不知道如何在没有大量代码冗余的情况下将这些关联起来。我是否将 Address 设为 STI 类型,并使用包含直接与客户关系的“CustomerAddress”子类?有没有办法减少重复次数?
【问题讨论】:
标签: php doctrine-orm