我正在使用jsonmodel来映射从我的服务中获得的响应。现在的问题是,我的服务给我的响应是一个字典数组,但我不能映射这个数组,因为它不是针对任何键分配的。

我有一个名为ContactsModel.h的JsonModel,它包含所有完美映射的参数标识符,但随后我需要获取此模型的数组。所以,我创建了另一个JsonModel,ContactListModel来保存它。
#import <JSONModel/JSONModel.h>
#import "ContactsModel.h"
@interface ContactListModel : JSONModel
@property(nonatomic, assign) NSArray<ContactsModel> *contacts;
@end但是,我的数组并不是针对任何键进行赋值的。所以,我认为,这就是它无法映射的原因。
有没有人能帮我解决这个问题。
发布于 2016-07-04 19:27:12
希望这能有所帮助:
NSMutableArray *objects = [NSMutableArray new];
for(NSDictionary *dictionary in responseObject){
[objects addObject:dictionary];
//do your modeling
}发布于 2016-07-07 17:39:17
@natasha
我确实认为您可以使用JSONModel的方法arrayOfModelsFromDictionaries:
所以在你的请求中,你可以这样做:
NetworkRequest:<whatEverRequest> params:<whatEverParams> completion:(id response){
if([response isKindOfClass:[NSArray class]]){
ContactListModel *list = [ContactListModel new];
list.contacts = [ContactsModel arrayOfModelsFromDictionaries: response];
// I just followed the jsonModel API. maybe latest version has initWithArray?
}
} error:(NSError *error){}];我希望这能解决你的问题
https://stackoverflow.com/questions/38159415
复制相似问题