【问题标题】:CoreData Father, mother children relationship, Can a CoreData subclass have a same relationship with two subclasses?CoreData父、母子关系,一个CoreData子类可以和两个子类有相同的关系吗?
【发布时间】:2016-10-15 16:57:45
【问题描述】:

我对这个问题感到很震惊

我有一个“Person”Coredata 子类,

显然一个人有父亲(Person)、母亲(Person)、配偶(Person)和孩子(List of Persons)

(以关系表示)

如果一个人是他父亲的孩子之一,那么他就是他母亲两个的孩子之一。

所以“孩子”必须与母亲和父亲有关。

我不能在核心数据中做到这一点,我错过了什么吗? 有没有办法解决这个问题?

【问题讨论】:

  • 我添加了一个新的实体,叫做Marriage NSDate *date;人*配偶; NSOrderedSet *children;好像解决了问题

标签: ios objective-c xcode core-data


【解决方案1】:

如果您使用 CoreData,您应该知道,它是 SQLite 的说唱歌手,因此您需要像在 SQL 中那样建立关系。 人“孩子”是对父亲和母亲的 n:1 财产。 为新实体建模,例如 MotherToChild,您可以在其中进行映射,如 SQL 中的规范化。

【讨论】:

  • //人“孩子”对父亲和母亲是 n:1 的财产//我做不到。
  • 您必须在 Coredata 编辑器的实体部分中对关系进行建模。另一个重要的一点是,每个 1:n 关系都需要 2 个关系。 (有关更多信息,请参阅此帖子:stackoverflow.com/questions/12709842/…
  • 我很清楚,但是一个人与母亲,父亲有两种关系。虽然父亲与一个人有孩子的关系,而母亲与同一个孩子有相同的关系,这在核心数据中是无法做到的。两个反向关系对于孩子来说是不可能的。
  • 好的,了解您的问题。您是否尝试过为新实体建模,例如 MotherToChild,您可以在其中进行映射,如 SQL 中的规范化?
  • 我就是这么做的 :) 你可以给出这个答案
猜你喜欢
  • 1970-01-01
  • 2015-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多