【问题标题】:NSPredicate by NSManagedObject for many-to-one lookupsNSManagedObject 的 NSPredicate 用于多对一查找
【发布时间】:2010-04-03 14:17:50
【问题描述】:

我有两个 NSManagedObjects Arm 和 Person 的场景。它们之间是多对一的关系 Person.arms 和反向 Arm.owner。

我想编写一个简单的 NSPredicate,其中我有 NSManagedObject *arm 并且我想获取这个手臂所属的 NSManagedObject *person。我可以制作一个文本表示并查找它,但是有没有更好的方法可以通过身份查找它?大概是这样的吧?

NSEntityDescription *person = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:MOC];
NSPredicate *personPredicate = [NSPredicate predicateWithFormat:@"%@ IN arms", arm];

干杯

尼克

【问题讨论】:

  • 真正的问题是“你为什么要这样做?”你希望这能给你带来什么?
  • @Joshua 我想根据一对多关系中的实体过滤一组数据

标签: iphone cocoa cocoa-touch core-data predicate


【解决方案1】:

我有两个 NSManagedObjects Arm 和 Person 的场景。它们之间是多对一的关系 Person.arms 和反向 Arm.owner。

我想编写一个简单的 NSPredicate,其中我有 NSManagedObject *arm,我想获取这个手臂所属的 NSManagedObject *person

那就是myArm.owner。不需要谓词;这就是反向关系的用途。

【讨论】:

  • 您当然是对的,这是通常的处理方式。但是,我想重用一个使用 NSFetchedResultsController 的视图,并且 arm 将是 NSFetchRequest 上的过滤器。或者有没有更好的方法使用这种反向关系来填充 NSFetchedResultsController?
猜你喜欢
  • 2015-01-19
  • 2012-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多