0

我有一个名为的数组deletedDepartments,其中包含名为 DeletedObject 的 NSObject。DeletedObject 只有一个名为 的字段deletedID。这个数组是从与 RestKit 的映射中生成的。

现在,我想在 CoreDate 中搜索Department它们iddeletedDepartments数组中的对象。

如果我做

[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"id IN %@", deletedDepartments ]];

这将不起作用,因为 deletedDepartments 不是由 NSNumber 组成的 NSArray,而是由包含我要比较的 NSNumber 的 NSObject 组成。如何在创建另一个通过迭代deletedDepartments并仅选择 的数组的情况下实现这样的事情deletedID

4

1 回答 1

2

将您的谓词更改为以下内容:

[NSPredicate predicateWithFormat:@"deletedID IN %@", [deletedDepartments valueForKey:@"deletedID"]]

这将创建您的 deletedId 数组,并使用 deletedId 属性评估每个对象。虽然,是的,这确实在内部迭代数组以创建一个新数组,但这是您能做的最好的事情,除非 NSObjectsdeletedDepartments与您正在获取的模型对象属于同一类。

于 2013-09-19T19:51:00.263 回答