在iOS开发数据请求时,基本上都会用到模型对象,将数据存储在自己的建的模很多人都用到了setValuesForKeysWithDictionary这个方法,但这个方法键值对必须是一一对应的,自己的定义的属性对象须与后台获取的对象一一对应,当你的字段与后台的获取的对象不一致,就会导致奔溃,如下所示
...this class is not key value coding-compliant for the key...
所以我们在建立model类的时候需要重写父类的一个方法,如下所示:
-(void)setValue:(id)value forUndefinedKey:(NSString *)key{
}
setValue:forUndefinedKey:这个方法是关键,只有存在这个方法后,才可以过滤掉不存在的键值对而防止崩溃,同时,setValue:forUndefinedKey:这个方法中还可以改变系统的敏感字,或者,你手动的映射key值不同的值,随你自己喜欢.