0

我正在寻找的是一种简洁的方法来获取由其关系唯一标识的核心数据对象。例如,给定数据模型:

在此处输入图像描述

...并给定一组NSManagedObject节点,我想获取一个三角形,或者至少知道一个 TriangleEntity 是否存在,如下所示:

NSSet *nodeSet = // a set of 3 NSManagedObject*s
NSFetchRequest *request = [[NSFetchRequest alloc] initWithEntityName:@"TriangleEntity"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"corners CONTAINS ALL %@", nodeSet]; 

我认为这CONTAINS ALL不是正确的语法——而且我知道我可以解压 NSSet 并获取

@"corners CONTAINS %@ AND corners CONTAINS %@ AND corners CONTAINS %@", setObj1, setObj2, setObj3

......但这似乎很愚蠢。有没有更优雅的解决方案?

4

1 回答 1

1

以下谓词查找所有角都在给定集合中的三角形:

[NSPredicate predicateWithFormat:@"ALL corners IN %@", nodeSet]

nodeSet可以是一个NSSet或一个NSArray

于 2012-10-25T14:31:23.323 回答