现有和非错误键的NSUnknownKeyException

时间:2012-09-29 10:17:54

标签: core-data xcode4 ios6 key-value-coding

我得到以下输出:

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason:
'[<NSManagedObject 0x21016610> setValue:forUndefinedKey:]: the entity MyEntity is
not key value coding-compliant for the key "aBooleanKey".'

在获得输出之前运行的代码如下:

self.name = [managedObject valueForKey:@"name"];
self.language = [managedObject valueForKey:@"language"];
self.ownerID = [managedObject valueForKey:@"ownerID"];
// the following line is the scope of the problem:
self.aBooleanKey = [[managedObject valueForKey:@"aBooleanKey"] boolValue];

对我而言,这看起来像是一种错误或类似的东西,因为所有其他实体属性都不会导致任何问题。但我检查了十二次,找不到任何错误。一切看起来都很正确。一周前一切都运转正常 - 我没有在这里做任何改变。

还有一些其他地方我用managedObject做事情,同样所有其他属性工作得很好,除了这个。我尝试在Core Data存储中删除它并重新输入它,但它没有解决问题。

此错误还有其他原因吗?

1 个答案:

答案 0 :(得分:1)

问题很奇怪(有时可行,有时不行),所以我建议更改属性的名称(例如booleanStatus)并验证问题是否仍然存在。

由于您更改了模型,因此需要删除该应用并对其进行更新。或者,您可以在Core Data上执行自动迁移。如你所愿。

希望它有所帮助。