假设我有以下类Hiechy:
/**
* @MappedSuperclass
*/
class Notification {
/**
* @ORMManyToOne(targetEntity="MirocCoreBundleEntityUser", inversedBy="notifications", cascade={"persist", "remove"})
*/
private $user;
}
class UserNotification extends Notification
class ProjectNotification extends Notification
此外,假设我有一个用户类映射通知:
class User {
/**
* @ORMOneToMany(targetEntity="MirocCoreBundleEntityNotification", mappedBy="user", cascade={"persist", "remove"})
*/
private $notifications;
}
现在,我想要的是以下内容:如果用户创建X usernotification和y projectnotifications,则在用户类中调用$通知的getter应返回长度| x y |的数组。两种类型的实例。当然,这也应该扩展到其他通知子类。
这是可能的,如果是这样?上面的示例不起作用。
我认为您可能正在寻找单个表继承策略学说文档。我认为您可能必须添加自己的方法来组合两个阵列。
当然,可以为两种类型的通知拥有两个单独的实体,并类似地组合它们,但从您的问题中,我假设您希望它们在一个表中。