之前使用MJExtension 就存在后台返回的数据和模型属性名不一样的情况。
比如description
后台要传这个字段,iOS是不允许定义这个名字的属性的。这时候就需要转换属性名。
网上的解决方法都不好用了。今天又遇上了。贴出来给大家看一下。
[MenuData mj_setupReplacedKeyFromPropertyName:^NSDictionary *{
return @{
@"des" : @"description"
};
}];
需要注意一点
des不能为要使用的字段。也就是说如果description没有值,那么des就没有值了,即使后台同时给出了des值也没有效果.
因为是全局使用的 我推荐放入初始化方法里
#import "MenuData.h"
#import <MJExtension.h>
@implementation MenuData
- (instancetype)init{
if (self=[super init]) {
[MenuData mj_setupReplacedKeyFromPropertyName:^NSDictionary *{
return @{
@"des" : @"description"
};
}];
}
return self;
}