不完全确定为什么它现在不起作用,我认为它以前一直在起作用。有人看到这个 FetchRequest 构造有问题吗?
- (NSArray *)entriesForDate:(NSDate *)date {
NSFetchRequest *request = [[NSFetchRequest alloc]initWithEntityName:@"Entry"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ANY addedOn.unique like %@", [T3Utility identifierForDate:date]];
request.predicate = predicate;
NSError *error = nil;
NSArray *matches = [self.database.managedObjectContext executeFetchRequest:request error:&error];
return matches;
}
再说一次,我 99% 确定这段代码直到最近一直在工作,所以我想我的代码中某处可能发生了其他事情。 . .但是当我通过调试器运行它时,这就是挂起的地方。这是我的错误:
ALL 或 ANY 运算符的左侧必须是 NSArray 或 NSSet
有什么想法吗?
谢谢!
最佳答案
addedOn
似乎不是一对多关系。确保在谓词中使用正确的属性/关系名称。另请注意,您不能在“ANY”谓词中使用一对一关系。
关于ios - NSPredicate 'The left hand side for an ALL or ANY operator must be either an NSArray or NSSet',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12127618/