Coredata关系实体创建

Posted

技术标签:

【中文标题】Coredata关系实体创建【英文标题】:Coredata relationship entity creation 【发布时间】:2012-04-16 16:28:51 【问题描述】:

我有一个关于 coredata 关系的问题。

基本上,如果我有 1 个实体称为父实体,而另一个与之有关系的实体是子实体,则它是反向的。

如果我创建父实体,它是否也会创建子实体?我已将“parentchildrenrelationship”设置为可选,但看起来每次我创建父实体时,它都会创建子实体。

这正常吗?谢谢

【问题讨论】:

子实体是什么意思? 对不起,错字表示父母与孩子有关系 【参考方案1】:

这不正常。你确定你没有创建子实体吗?仅仅因为您创建一个实体并不意味着它会创建它所引用的实体。

【讨论】:

嗯通过代码。这很奇怪,因为这是我第一次遇到这种情况。 好的,知道了。愚蠢的我。周围有一些测试代码。哈,我已经挠了很久了。 这发生在我们所有人身上。不过,如果我们能承认的话,那就少了:)【参考方案2】:

核心数据应该自动创建实体来实现关系,特别是如果关系是可选的。对于新创建的父实体,children 的值应该是 nil(对于一对一关系)或空 NSSet 或 NSArray(对于一对多关系,取决于排序)。

【讨论】:

以上是关于Coredata关系实体创建的主要内容,如果未能解决你的问题,请参考以下文章

NSFetchRequest 带有用于递归 CoreData 实体关系的排序描述符

在 CoreData 中获取实体时,实体关系是不是也会加载到内存中?

两个 NSArrayController 和一个关系(CoreData)

CoreData Parent Children 使用单个实体的一对多反向关系

在 coredata 中添加实体和另一个实体的属性之间的关系

使用 MagicalRecord 插入后 CoreData 关系未更新