主要作用:简化VC代码,便于请求数据中字段的增、删、查、找,以及后期代码维护。
一、构建Model。
创建继承于NSObject的PlaceOrderModel
#import <Foundation/Foundation.h> @interface PlaceOrderModel : NSObject //保证下面的字段和请求的字段相同即可,添加新字段时可直接使用,新字段对旧字段没有影响 @property (nonatomic,strong) NSString * provinceName; @property (nonatomic,strong) NSString * cityName; @property (nonatomic,strong) NSString * countyName; @property (nonatomic,strong) NSString * unitName; @property (nonatomic,strong) NSString * address; @property (nonatomic,strong) NSString * contact; @property (nonatomic,strong) NSString * phone; +(instancetype)ModelWithDic:(NSMutableDictionary*)dic; @end
#import "PlaceOrderModel.h" @implementation PlaceOrderModel +(instancetype)ModelWithDic:(NSMutableDictionary *)dic { PlaceOrderModel *model=[[PlaceOrderModel alloc]init]; [model setValuesForKeysWithDictionary:dic]; return model; } -(void)setValue:(id)value forUndefinedKey:(NSString *)key { if ([key isEqualToString:@""]) { NSLog(@"数据不对"); } }
二、在VC中调用PlaceOrderModel
PlaceModel = [PlaceOrderModel ModelWithDic:_dataSouce[i]]; NSString * cityName = nil; if ([PlaceModel.provinceName isEqualToString:PlaceModel.cityName]) { cityName = [NSString stringWithFormat:@"%@%@",PlaceModel.provinceName,PlaceModel.countyName]; }else{ cityName = [NSString stringWithFormat:@"%@%@%@",PlaceModel.provinceName,PlaceModel.cityName,PlaceModel.countyName]; } cell.CityName.text = cityName; cell.AddressName.text = PlaceModel.address; NSString * people = [NSString stringWithFormat:@"%@ %@",PlaceModel.contact,PlaceModel.phone]; cell.PeopleName.text = people;