在我的数据模型中,在一个实体中,我有一个布尔属性。在xcmodeldatad文件中,它列为:
need sync Boolean.
在NSmanagedobject文件中,如下所示:
.h file: @property (nonatomic, strong) NSNumber *needsync;//bool
.m file @dynamic needsync;
在编辑后保存记录时,我使用了以前多次使用过的代码:
[list setValue:@ 0 forKey:@“needsync”];
然而,当它到达
这一行时它会抛出异常NSUnknownKeyException', reason: '[<__NSCFString 0x17409c4d0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key need sync.'
这真令人困惑,我想知道是否有人能发现错误或者之前发生过这种情况。
谢谢。
答案 0 :(得分:1)
再次检查您的代码。
崩溃日志显示您的对象是NSString,而不是YourList对象,因此,它没有needync property =&gt;崩溃。
答案 1 :(得分:0)
您的list
词典的类型是什么?是NSMutableDictionary<NSString*, NSNumber*>
吗?如果是这样,那么您的 实体属性 和 属性声明 之间的类型可能不匹配。
或者,如果您的词典属于NSMutableDictionary<NSNumber*, NSNumber*>
类型,请尝试以下操作:
[list setObject:@0 forKey:needsync]; // don't make `needsync` a NSString* object, it's already an object type (NSNumber*)