【发布时间】:2012-03-29 08:33:40
【问题描述】:
我正在尝试为以下 JSON 数据创建映射。
{
"Calls": [
{
"id": "18",
"parent_id": "0",
"status": "completed",
},
{
"id": "19",
"parent_id": "0",
"status": "completed",
},
}
我正在使用以下方法来映射和处理来自委托的响应。当我运行它时,didLoadObjects 方法永远不会被命中,也不会记录任何内容。另外,我很肯定 URL 是正确的,并且 URL 返回了我在上面发布的 JSON。
- (void)viewDidLoad
{
[super viewDidLoad];
RKLogConfigureByName("RestKit/*", RKLogLevelTrace);
RKObjectMapping *callMapping = [RKObjectMapping mappingForClass:[YCMDCall class]];
[callMapping mapKeyPath:@"id" toAttribute:@"call_id"];
[callMapping mapKeyPath:@"parent_id" toAttribute:@"parent_id"];
[callMapping mapKeyPath:@"status" toAttribute:@"status"];
RKObjectManager *manager = [[RKObjectManager sharedManager] managerWithBaseURL:@"http://MYBASEURL/"];
[manager.mappingProvider setMapping:callMapping forKeyPath:@"Calls"];
[manager loadObjectsAtResourcePath:@"RESTOFURL" objectMapping:callMapping delegate:self];
}
- (void)objectLoader:(RKObjectLoader*)objectLoader didLoadObjects:(NSArray*)objects
{
NSLog(@"Load collection of Articles: %@", objects);
}
- (void)objectLoader:(RKObjectLoader *)objectLoader didFailWithError:(NSError *)error
{
NSLog(@"Oh no! Error: %@", [error localizedDescription]);
}
另外,如果有人可以提供示例或指出正确的方向,将这些结果导入 TableViewController。提前感谢您的帮助。
@interface YCMDCall : NSObject
@property (nonatomic, retain) NSString* call_id;
@property (nonatomic, retain) NSNumber* parent_id;
@property (nonatomic, retain) NSString* status;
@end
@implementation YCMDCall
@synthesize call_id;
@synthesize parent_id;
@synthesize status;
@end
【问题讨论】:
-
您好,您的问题解决了吗?
-
是的,大部分只是忽略了一些简单的东西。
标签: objective-c ios cocoa restkit