在开发中经常会遇到网络请求,请求中带有大量的参数,采用MJExtension框架,将所有的参数都转化为相应的模型,以便于更好的操作和开发在使用框架的过程中,会遇到一些与iOS SDK有冲突的字段.
比如 id等通过:
```
+ (NSDictionary *)replacedKeyFromPropertyName {
// 模型的desc属性对应着字典中的description
return @{@"desc" : @"description",@"ID" : @"id"};
}
```
方法将model文件中定义的字段名转化为与请求数据中相同的,使两者的内部相同,只是名称不同
1. 通过遇到有的字段是一个数组,数组中又存放了其他的数据模型对象,可以通过以下方法将其关联
```
+(NSDictionary *)objectClassInArray {
return @{@"businesses" : [Busnisses class]};
}
```
3、由于字典的特性,其中不能存放基本数据类型,所以在定义字段的时候,一定要讲 基本数据类型转化为对象才可以存放,问题1:在开发中定义了数据模型,但是在网络请求时候,传入的模型将其转化为字典后并没有数据,通过断点调试可以发现,模型中有数据?解决方法: 仔细检查定义的数据模型,查看其中是否有基本数据类型float ,double等,查看需要的那个参数是不是在基本数据类型之后定义的,由于字典不能存放基本数据类型的特性,所以在模型转字典的过程中由于遇到了基本数据类型,而其后的所有数据对象都不能正确存放,所以导致正确的位置出现了错误的问题