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 使用单个实体的一对多反向关系