首页 > 代码库 > ios-model数据结构

ios-model数据结构

主要作用:简化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;

 

ios-model数据结构