gpt4 book ai didi

ios - 如何使用核心数据创建递归的一对多关系?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:21:37 27 4
gpt4 key购买 nike

我以前用过核心数据,但我要构建的这个数据库有一个特殊性,需要一种特殊的关系,这让我的大脑融化。

我有 2 个实体,我们称它们为 Cage 和 Animal。

  • Cage 有一个属性 name
  • Animal 有一个 nameimage 属性,并且必须跟踪它的 child 。

一个可能的结构可以是这样的

cage ---------- animal 1
|
|_____ animal 2
|
|_____ animal 3 ____ animal 4
|
|__ animal 5
|
|_____ animal 6

查看此结构,您会看到 Animal 1Animal 2Animal 3 的父级为 Cage或者是凯奇的“ child ”对象,如果你愿意的话。另一方面,Animal 3 有 2 个子对象(4 和 5),Animal 5 有一个子对象。

我需要 CageAnimal 是不同的实体。

因此,您看到 Animal 对象可以有其他 Animals 作为子对象。一只动物可以有一个 parent ,但可以有多个 child 。 Cage 对象只能有 child 。

我试图添加一个 children 关系,目标等于 Animal 并且反向等于 children (toMany) 但这就是让我的大脑融化的原因,因为如果我这样做,这将一次是 parent ,一次是 child ,更不用说 child 这个名字会使编码难以绕过头......

我必须如何建立实体之间的关系才能完成这项工作?

最佳答案

首先创建您的实体和属性。然后建立你的关系。 “动物”和“ child ”的关系应该设置为“很多”。将“cage”和“parent”设置为“to one”关系。最后,为每个关系设置目标和逆。

“动物”和“笼子”的关系应该是相反的。关系“parent”和“children”应该设置为相反。

完成后应该看起来像这样:

enter image description here

关于ios - 如何使用核心数据创建递归的一对多关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28516684/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com