我有一个带有 NSNumber 属性(存储为 64 位整数)的 Core Data 托管对象。我正在尝试使用谓词对象检索对象,如下所示:
let request = NSFetchRequest(entityName: "MyEntity")
request.predicate = NSPredicate(format: "pageId == %@", pageId)
当 then 导致以下运行时错误:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unable to generate where clause for predicate (pageId == 22205021) (unknown problem)'
在此实例中,pageId 为“22205021”。就 where 子句而言,它看起来没问题,即 pageId == 22205021
所以我不明白为什么它不起作用。
注意:我使用的是 Xcode 7 beta 4。
最佳答案
实际上这是我的错 - 我在谓词中为该对象使用了一个不存在的属性。 “MyEntity”不包含“pageId”- 更好的错误消息不会出错。
关于ios - 核心数据无法为谓词生成 where 子句(Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31833334/