CoreData 获取请求 NSPredicate 不工作
CoreData fetch request NSPredicate not working
我已将新的 bool 属性 添加到我的 CoreData 模型中的实体,并将现有数据迁移到新模型。我现在只想获取布尔值为 false
的数据。我尝试了 Whosebug 上建议的所有内容,但找不到问题的答案。
我尝试了以下谓词:
let predicate = NSPredicate(format: "%K == %i", #keyPath(Tag.isWrite), false)
fetchRequest.predicate = predicate
let predicate = NSPredicate(format: "isWrite == 0")
fetchRequest.predicate = predicate
let predicate = NSPredicate(format: "isWrite == %@", NSNumber(value: false))
fetchRequest.predicate = predicate
已迁移模型的默认值为 false
for isWrite
。当我不应用谓词并在显示数据之前设置断点时,我可以清楚地看到 isWrite
在调试器中为 false。当我应用谓词时,我没有得到任何数据。
我是不是漏掉了什么?
CoreData 中似乎有问题,属性名称以“is...”开头。尝试更改属性的名称。
我已将新的 bool 属性 添加到我的 CoreData 模型中的实体,并将现有数据迁移到新模型。我现在只想获取布尔值为 false
的数据。我尝试了 Whosebug 上建议的所有内容,但找不到问题的答案。
我尝试了以下谓词:
let predicate = NSPredicate(format: "%K == %i", #keyPath(Tag.isWrite), false)
fetchRequest.predicate = predicate
let predicate = NSPredicate(format: "isWrite == 0")
fetchRequest.predicate = predicate
let predicate = NSPredicate(format: "isWrite == %@", NSNumber(value: false))
fetchRequest.predicate = predicate
已迁移模型的默认值为 false
for isWrite
。当我不应用谓词并在显示数据之前设置断点时,我可以清楚地看到 isWrite
在调试器中为 false。当我应用谓词时,我没有得到任何数据。
我是不是漏掉了什么?
CoreData 中似乎有问题,属性名称以“is...”开头。尝试更改属性的名称。