【问题标题】:RestKit: Map 2-Dimensional Array (Collection in Collection)RestKit:映射二维数组(Collection in Collection)
【发布时间】:2012-02-29 15:24:04
【问题描述】:

我只是试图解析一个包含二维数组的 JSON 对象。

例子:

{
  "2dimarray": [
                 [{"key": "val"}, {"key": "val"}],
                 [{"key": "val"}, {"key": "val"}]
               ]
}

假设2dimarray[x][y]的内容只有一种,我添加了映射:

[objectMapping mapKeyPath:@"2dimarray" toRelationship:@"2dimarray" withMapping: myMappingForIncludedObjects];

在日志中 RestKit 告诉我:

W restkit.object_mapping:RKObjectMappingOperation.m:438 WARNING: Detected a relationship mapping for a collection containing another collection. This is probably not what you want. Consider using a KVC collection operator (such as @unionOfArrays) to flatten your mappable collection.

但实际上这正是我想要的。基本上我假设对象映射器会用NSArray*s 填充我的Objective-C 属性NSArray* 2dimarray,其中包括用myMappingForIncludedObjects 映射的对象。相反,每个数组都映射(当然失败了)myMappingForIncludedObjects

我做错了什么?或者更好:我需要做什么来归档我预期的行为?

【问题讨论】:

  • 这个issue 似乎解决了这个问题。但是,在给定的示例中,外部数组仍然包含对象,这在我的场景中并非如此。

标签: ios json nsarray restkit


【解决方案1】:

我相信你引用的问题是布莱克解释问题,而不是解决方案。我不认为 RestKit 设置为处理您描述的映射(对象数组的数组)。您可以浏览他在问题中描述的示例以及查看他的提交,您会发现引入的逻辑旨在检测问题并将其记录下来以进行调试。

【讨论】:

    猜你喜欢
    • 2016-11-22
    • 2012-12-09
    • 2015-01-17
    • 2021-05-04
    • 2019-05-27
    • 1970-01-01
    • 2018-06-10
    • 2011-01-10
    相关资源
    最近更新 更多