ios - 地幔 iOS : How to create class model with variable key

标签 ios objective-c github-mantle

我有一个 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 以返回嵌套在键中的字典 ({"property": { "111": …, "222": … }}) 这样你就可以实际绑定(bind)到它
  • 在解析之前修改客户端的响应

一旦你有了一个可以在 +JSONKeyPathsByPropertyKey 中传递的值,你就可以编写一个自定义值转换器来处理模型。

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

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

关于ios - 地幔 iOS : How to create class model with variable key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32337899/

相关文章:

javascript - React-Native:无法访问状态值或从 renderRow 声明的任何方法

ios - BlocksKit 和 Xcode 4.5

iphone - PBKDF2 的 CommonCrypto 替代品

objective-c - nsrange.location 不完全是麻烦 makerange 子串 ios objective c

objective-c - 如何使 Mac OSX Cocoa 应用程序全屏显示?

ios - 带空格的字符串无法转换为 NSURL - Mantle

android - 通过 PhoneGap 中的短信共享手机地理位置坐标(适用于 Android/IOS)

ios - 如何转换数组的字符串值

ios - 地幔 : Uncaught exception 'NSInvalidArgumentException' when parsing JSON

ios - 在 iOS 上使用 Mantle 将 Json 数组转换为 Obj 属性