相同层次结构的多个实体映射到单个属性



假设我有以下类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 |的数组。两种类型的实例。当然,这也应该扩展到其他通知子类。

这是可能的,如果是这样?上面的示例不起作用。

我认为您可能正在寻找单个表继承策略学说文档。我认为您可能必须添加自己的方法来组合两个阵列。

当然,可以为两种类型的通知拥有两个单独的实体,并类似地组合它们,但从您的问题中,我假设您希望它们在一个表中。

相关内容

  • 没有找到相关文章