Mantle iOS:如何使用可变键创建 class 模型

Mantle iOS: How to create class model with variable key

我有一个 JSON 字典,如下所示:

{
"111": {"dates"   : [<array_of_dates>], 
        "members" : [<array_of_members>]}, 
"112": {"dates"   : [<array_of_dates>], 
        "members" : [<array_of_members>]},
"113": {"dates"   : [<array_of_dates>], 
        "members" : [<array_of_members>]}
}

如您所见,嵌套字典的键是变量 (111, 112, 113)。

到目前为止,我制作的每个 Mantle 模型都有固定的键,所以我不知道如何处理这种特殊情况。

有什么想法吗?

你有几个选择:

  • 将服务器端 API 更改为 return 此字典嵌套在键 ({"property": { "111": …, "222": … }}) 中,以便您可以实际绑定到它
  • 在解析之前修改客户端上的响应

获得可以在 +JSONKeyPathsByPropertyKey 中使用的值后,您可以编写自定义值转换器来处理模型。

这里有两个例子可以帮助您入门:

最重要的部分是弄清楚您想如何使用从 JSON 获得的地图。也许你最好将它作为字典保存在私有 属性 中,并编写 public 方法以一种有意义的方式访问它