在核心数据中仅获取父实体的数据,其中父子实体具有1到M的关系

时间:2018-04-08 07:29:56

标签: ios core-data fetch relationship

enter image description here enter image description here我有2个实体。 国家/地区地区。国家与地区有1对多的关系。如果我获取country(通过CountryID谓词),它将返回具有所有相对Region的特定Country属性。

就我而言,我不需要区域数据(包含大量数据)。怎么可能?

以下帖子说,NSFetchRequest的 includesSubentities 可以做到这一点。但它不适合我!

Core data NSFetchRequest also fetches children objects of the Entity

1 个答案:

答案 0 :(得分:0)

NSFetchRequest的默认值为returnsObjectsAsFaults true,因此,除非您更改了此属性,否则您的区域只会是错误,而不是完整对象。

您可以通过propertiesToFetch属性仅提供您感兴趣的属性来进一步限制所获取的数据。

你应该一如既往地警惕预先优化;如果性能是一个问题,那么你可以看看它,但我怀疑即使取出几千Region个故障会对性能产生影响。