我正在尝试在我的核心数据应用程序中使用谓词。我在整个应用程序中使用它们,除了这个之外没有任何问题:
NSPredicate *matchDatePredicate = [NSPredicate predicateWithFormat:@"ANY matches.matchDate < %@", datePlusOne];
这会引发以下错误: '无法解析格式字符串“ANY matches.matchDate < %@”'
在不同的 View Controller 中,以下工作有效:
NSPredicate *matchDatePredicate = [NSPredicate predicateWithFormat:@"ANY matchDate < %@", self.match.matchDate];
datePlusOne 是一个 NSDate 属性,就像 self.match.matchDate 一样。我尝试过各种版本的格式字符串,使用 >、>=、=、== 等,但每次都会得到相同的错误。
我在这里错过了一些非常明显的东西吗?
编辑:这是正在查询的核心数据实体。谓词正在从 MatchStarts 搜索到 Matches:
最佳答案
两个谓词都不同,一个谓词似乎包含 matches.matchDate
,而另一个谓词仅包含 matchDate
。检查是否是问题所在。
编辑:要使 ANY 工作,匹配必须是一对多关系,或者 matchDate 必须是一对多关系。
如果两者都是一对一关系,则您不能使用任何。
关于ios - NSDate 谓词抛出 'Unable to parse the format string' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17808943/