MJExtension

这是一个字典转模型的方法

 // 字典转模型
 self.topic = [BSToptic mj_objectArrayWithKeyValuesArray:responseObject[@"list"]];

有时候我们有这样的需求,就是服务器返回的数据变量很乱,但在模型中,我们要自己定义变量,然而怎么与服务器的数据保持一致呢,这里有这样的方法。

有时候可能只需要将数组中的某个数据取出来对应模型@"top_cmt" : @"top_cmt[0]"

/**
 *  与服务器保持一致
 */
+ (NSDictionary *)mj_replacedKeyFromPropertyName {
    return @{@"small_image" : @"image0",
             @"large_image" : @"image1",
             @"middle_image" : @"image2"
              @"top_cmt" : @"top_cmt[0]"
             };
}
屏幕快照 2016-08-13 下午6.12.09.png
  • 这里我的模型数据在subject里面,所有只能这样用MJExtension了
    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    
    [manager GET:@"https://api.douban.com/v2/movie/us_box" parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        
        NSMutableArray *dicArray = [NSMutableArray array];
        
        NSArray *dataArray = responseObject[@"subjects"];
        
        for (int i = 0; i<dataArray.count; i++) {
            
            NSDictionary *dic = [dataArray[i] objectForKey:@"subject"];
            
            [dicArray addObject:dic];
        }
        
        self.movies = [WXMovie mj_objectArrayWithKeyValuesArray:dicArray];
        
        [self.listView reloadData];

        // 创建海报视图
        [self createPosterView];

    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        
    }];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容