iOS核心数据 - 如何为数组中的每个对象请求实体?

时间:2013-01-21 16:39:53

标签: ios core-data nsfetchrequest

不知道你是否有我的问题,所以这是一个例子。

我有一个包含50个产品ID的数组,我想检查Core Data中是否存在所有ID。如果没有循环并发出50个请求,我该怎么做?必须有一种比我想象的更有效的方式。

在我的模型中,我有一个只有Name和Id属性的实体Product。

1 个答案:

答案 0 :(得分:2)

你可以使用......

[fetchRequest setPredicate:[NSPredicate predicateWithFormat: @"productid IN[c] %@", ids]];

其中id是NSStrings的数组,fetchRequest是你在具有productid属性的实体上的NSFetchRequest。

您也可以为其他对象类型和关系执行此操作。

NSArray *requiredChildren = //some array of coredata objects

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"child IN %@", requiredChildren];