JSONModel 遇见关键字为id或者description的处理方法

前端之家收集整理的这篇文章主要介绍了JSONModel 遇见关键字为id或者description的处理方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

JSONModel 遇见关键字为id或者description

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

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"contentList" : [
{
"id" : "57" ,
"imgSrc" : "******" ,
"title" : "******" ,
"introduction" : "机构简介*******." ,
"url" : "******" ,
"created" : "2008/12/22"
},
{}
]
}

  

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

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

1
2
3
4
5
6
7
8
@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里面,添加方法

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

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

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

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

猜你在找的Json相关文章