【问题标题】:Predicate for Child to parent entity using NSFetchResultController使用 NSFetchedResultsController 的子实体到父实体的谓词
【发布时间】:2017-10-19 10:22:39
【问题描述】:

我有两个实体 ABAB 具有一对多关系。现在我想使用NSFetchResultController 获取实体 B。如果实体A 有多个B,我应该在获取时只得到一个B。有人可以告诉我如何使用谓词进行此提取吗?提前致谢。

【问题讨论】:

  • 你能解释一下你的要求吗?您是否需要使用 FRC 而不是直接提取?如果是这样,为什么?为什么每个 A 只需要一个 B?如果给定的 A 有多个 B,您希望包括哪个 B?
  • 我必须使用 FRC。如果给定 A 有多个 B,则将包括具有最新创建日期(属性)的 B。
  • 您是否需要 FRC 来提供部分(即您是否使用 sectionNameKeyPath)?

标签: ios objective-c core-data nsfetchedresultscontroller nsfetchrequest


【解决方案1】:

您无法使用 FRC 执行此操作。即使您可以,当模型更改时它也不会正确发出更新通知,所以无论如何都是没有意义的。

所以你要么必须

a) 手动获取、过滤和排序以获取您的源数据。你可以观察NSManagedObjectContextObjectsDidChangeNotification知道什么时候刷新。

b) 将此信息缓存到一个单独的属性中,以便 FRC 可以访问它。即B需要独立知道是否应该显示。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-26
    • 1970-01-01
    相关资源
    最近更新 更多