Ios CoreData获取请求NSPredicate不工作
我向CoreData模型中的一个实体添加了一个新的bool属性,并将现有数据迁移到新模型中。我现在只想获取bool值为Ios CoreData获取请求NSPredicate不工作,ios,core-data,nspredicate,Ios,Core Data,Nspredicate,我向CoreData模型中的一个实体添加了一个新的bool属性,并将现有数据迁移到新模型中。我现在只想获取bool值为false的数据。我在StackOverflow上尝试了这里的所有建议,但我找不到问题的答案 我尝试了以下谓词: let predicate = NSPredicate(format: "%K == %i", #keyPath(Tag.isWrite), false) fetchRequest.predicate = predicate 对于isWrite,迁移模型的默认值为f
false
的数据。我在StackOverflow上尝试了这里的所有建议,但我找不到问题的答案
我尝试了以下谓词:
let predicate = NSPredicate(format: "%K == %i", #keyPath(Tag.isWrite), false)
fetchRequest.predicate = predicate
对于isWrite
,迁移模型的默认值为false
。当我在显示数据之前不应用谓词并设置断点时,我可以清楚地看到调试器中的isWrite
为false。当我应用谓词时,我没有得到任何数据
我遗漏了什么吗?属性名称以“is…”开头的CoreData中似乎存在问题。尝试更改属性的名称。我看到了前面的问题(我现在找不到),这意味着CoreData中以“is…”开头的属性名称存在一些问题。可能值得为属性尝试不同的名称。天哪,是的,它很有效!这太愚蠢了。谢谢把这个作为答案贴出来,我会接受并投你一票。。
let predicate = NSPredicate(format: "isWrite == 0")
fetchRequest.predicate = predicate
let predicate = NSPredicate(format: "isWrite == %@", NSNumber(value: false))
fetchRequest.predicate = predicate