我正在制作一种方法,该方法将删除我在上次同步中未更新的所有 NSManagedObjects。
- (void)removeStaleObjects {
// Delete objects that have not been updated in this sync.
NSPredicate *stalePredicate = [NSPredicate predicateWithFormat:@"updated < %@", self.syncStart];
NSArray *staleObjects = [Node MR_findAllWithPredicate:stalePredicate];
for (Node *n in staleObjects) {
[[NSManagedObjectContext MR_defaultContext] deleteObject:n];
}
}
代码在 MR_findAll... 行一直失败
[__NSDate objCType]: unrecognized selector sent to instance
我已经用苹果文档检查了我的语法,我 99% 肯定我正确地创建了谓词,startDate 只是
_startDate = [NSDate date];
在我的同步之前运行。然后在我同步后我打电话
[self removeStaleObjects];
有谁知道我在哪里搞砸了?
更新:我能够通过将更新时间存储为双精度来使其工作。但是,我仍然有兴趣让它与 NSDates 一起工作,所以如果有人想出办法,请在此处发布。