NSDictionary 中的嵌套对象与 RestKit
Posted
技术标签:
【中文标题】NSDictionary 中的嵌套对象与 RestKit【英文标题】:Nested objects in NSDictionary with RestKit 【发布时间】:2012-08-21 14:30:26 【问题描述】:我有一个 JSON 文档,其中包含具有未知键的对象中具有已知模式的对象,我想用 RestKit 映射它。让我解释一下:
"object":
"unknownKey1" : "data1" : "...", "data2" : "...",
"unknownKey2" : "data1" : "...", "data2" : "...",
"unknownKey3" : "data1" : "...", "data2" : "..."
仅在运行时才知道使用键“object”设置对象。对象中包含的键具有随机名称。但是,我知道存储在这些未知键中的对象的确切架构。
现在我想将带有键“object”的对象的内容映射到 NSDictionary,因为它可以轻松访问随机键。但是,由于存储在这些键上的对象的架构是已知的,因此我希望将它们映射到自定义对象。
那么是否有可能映射到包含这些对象的 NSDictionary?我还没有找到解决方案...
【问题讨论】:
可能重复:***.com/questions/11912731/… 【参考方案1】:你可以这样做:
RKObjectMapping* mapping = [RKDynamicObjectMapping dynamicMapping];
mapping.objectMappingForDataBlock = ^(id data)
NSDictionary* object = [data objectForKey: @"object"];
NSArray* keys = [object allKeys];
RKObjectMapping* dataMapping = [RKObjectMapping objectMapping];
//Use the keys to define mapping
return dataMapping;
;
【讨论】:
【参考方案2】:也许可以查看 JSONKit https://github.com/johnezang/JSONKit 从您的 JSON 文档创建一个 NSDictionary。
【讨论】:
以上是关于NSDictionary 中的嵌套对象与 RestKit的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot 中的 Rest 服务需要来自 GET 请求的 JSON 中的嵌套对象
从 CoreData 在 NSDictionary 中制作嵌套 JSON
Django Rest Framework:将嵌套 json 字段中的数据序列化为普通对象
如何将变量与 NSArray 中的 NSDictionary 中的对象进行比较?