JSONModel 遇见关键字为id或者description


像id。description这样的,都是系统自带的,要解析它,得特殊处理一下。我用的是JSONModel

{
    "contentList": [
        {
            "id": "57",
            "imgSrc": "******",
            "title": "******",
            "introduction": "机构简介*******.",
            "url": "******",
            "created": "2008/12/22"
        },
        {}
    ]
}

  

比如,我的一个关键字是id,如果直接写关键字为id,这时候,这个Model类型是不会被解析的,解析完后,类型变量为nil。

这时候,需要我们在模型的.h里面,给它起一个另外的名字:(我起的是list_id)

@interface ContentListM : JSONModel
@property (nonatomic, copy) NSString<Optional> * created;
@property (nonatomic, copy) NSNumber<Optional> * list_id;
@property (nonatomic, copy) NSString<Optional> * imgSrc;
@property (nonatomic, copy) NSString<Optional> * introduction;
@property (nonatomic, copy) NSString<Optional> * title;
@property (nonatomic, copy) NSString<Optional> * url;
@end

在.m里面,添加方法:

+(JSONKeyMapper *)keyMapper{
    return [[JSONKeyMapper alloc]initWithDictionary:@{@"id":@"list_id"}];
}

  将id的值传递给list_id,这样,这个模型就能够被解析了。

当然,在读取时,关键字直接写list_id就可以了。

注意:在写前面的变量名时,要添加Optional

 

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM