创建地幔模型时,我一直试图忽略字典中的键。假设 json 包含:
{
prop1:"my prop",
prop2:"my prop2"
}
最初我有一个模型
class MyModel: MTLModel, MTLJSONSerializing {
//MARK: Model properties
var prop1: String!
class func JSONKeyPathsByPropertyKey() -> [NSObject : AnyObject]! {
return ["prop1":"prop1"]
}
}
问题是我收到一条错误消息,说“此类不符合键 prop2 的键值编码”。
我还注意到,JSONKeyPathsByPropertyKey
使用字典初始化模型时不会调用该方法try! super.init(dictionary: dictionaryValue, error: ())
,仅在从模型生成 JSON 时才会调用该方法,强制属性具有与 JSON 相同的键。我希望能够忽略某些键的原因是因为后端服务可能会发生变化,而且我不一定必须滚动更新,因为调用中添加了一些额外的信息,或者因为它们完全不相关。