2个不同对象中相同类型的嵌入对象列表

问题描述 投票:0回答:0

我在 coredata 中有一个关系模式,我正在尝试将其迁移到领域,但怀疑是否可以在这里建立相同的模式..

class GrandParent: Object {
    @Persisted(primaryKey: true) public var primaryId: ObjectId
    @Persisted public var name: String
    @Persisted public var dob: String
    @Persisted public var children: List<Parent>
    @Persisted public var grandChildren: List<Child>
}

class Parent: EmbeddedObject {
    @Persisted public var name: String
    @Persisted public var dob: String
    @Persisted public var children: List<Child>
    @Persisted(originProperty: "children") public var parents: LinkingObjects<GrandParent>
}

class Child: EmbeddedObject {
    @Persisted public var name: String
    @Persisted public var dob: String
    @Persisted(originProperty: "grandChildren") public var grandParents: LinkingObjects<GrandParent>
}

我使用了这种模式,这样我就不需要每次想知道祖父母的孙子时都遍历父对象。 正如领域文档所读, '嵌入对象作为嵌套数据存在于单个特定父对象中。',

是否可以在 GrandParent 和 Parent 类中都有 Child 列表?

  1. 如果可能,是否会在删除GrandParent或Parent中的任何一个时级联删除Child的List?
  2. 如果not可能,实现这种模式的正确方法是什么?
swift realm realm-mobile-platform realm-embedded-object
© www.soinside.com 2019 - 2024. All rights reserved.