Ios RestKit RKDynamicObjectMapping仅适用于第一个JSON结果
我遇到了一个关于Ios RestKit RKDynamicObjectMapping仅适用于第一个JSON结果,ios,rest,wcf-data-services,restkit,Ios,Rest,Wcf Data Services,Restkit,我遇到了一个关于RKDynamicObjectMapping的问题,但它可能是 我误用了它 我有下面的场景 请求服务获取区域 选择区域 请求服务获取所选区域的日记账 两个调用返回的数据如下所示 { d: [{cutID:""}, {cutID:""}, {cutID:""}] } { d: [{journalID:""}, {journalID:""}, {journalID:""}] } 我有以下代码 RKObjectMapping* cutMapping = [RKObjectMapp
RKDynamicObjectMapping
的问题,但它可能是
我误用了它
我有下面的场景
{ d: [{cutID:""}, {cutID:""}, {cutID:""}] }
{ d: [{journalID:""}, {journalID:""}, {journalID:""}] }
我有以下代码
RKObjectMapping* cutMapping = [RKObjectMapping mappingForClass:[Cut
class]];
[cutMapping mapKeyPath:@"CutID" toAttribute:@"cutID"];
RKObjectMapping* journalMapping = [RKObjectMapping mappingForClass:
[Journal class]];
[journalMapping mapKeyPath:@"journalID" toAttribute:@"journalID"];
RKDynamicObjectMapping * dynamicMapping = [RKDynamicObjectMapping
dynamicMapping];
[dynamicMapping setObjectMapping:journalMapping
whenValueOfKeyPath:@"__metadata.type" isEqualTo:@"JournalDetails"];
[dynamicMapping setObjectMapping:cutMapping
whenValueOfKeyPath:@"__metadata.type" isEqualTo:@"Cut"];
[[[RKObjectManager sharedManager] mappingProvider]
setMapping:dynamicMapping forKeyPath:@"d"];
....
[objectManager loadObjectsAtResourcePath:getResourcePath
delegate:self];
....
后来
[objectManager loadObjectsAtResourcePath:getResourcePath
delegate:obj];
返回Cut
对象的第一个请求的结果被完美地映射,但返回Journal
对象的第二个请求的结果却没有映射。
登录request:didloadsresponse
显示服务返回
应该是json,所以问题在于映射
如何使它与两个映射一起工作
有人在使用RestKit动态映射吗?我想您已经检查了Cut对象是否映射到CoreData实体中的多对多关系
如果是这样的话,你能打开RESTKit日志并发布结果吗?不,我没有,实际上我还没有使用CoreData。你能告诉我如何打开日志记录,你想看到哪些结果吗?对不起,我对CoreData的假设;o) -非常酷,值得花时间学习。不幸的是,API文档中没有记录日志,但是如果您浏览RESTKit示例,您将看到所使用的
RKLog
类型和方法的参考<代码>RKLogConfigureByName(“RestKit/ObjectMapping”,RKLogLevelInfo)代码>RKLogConfigureByName(“RestKit/CoreData”,RKLogLevelTrace)代码>似乎没有其他人会帮忙,所以我只给你奖励谢谢;o) 。。你的问题解决了吗?如果没有,日志是否提供了进一步的线索?