使用RestKit解析并存储嵌套数组

时间:2013-10-16 10:05:39

标签: json core-data restkit restkit-0.20

我的iOS项目使用RestKit 0.21.0组件负责从远程服务器获取,解析和存储Core Data响应。在其中一个后端JSON响应中,我有类似的东西:

"response": [
{
  "id": 1,
  "start_time": "10:00:00",
  "end_time": "14:00:00",
  "name": "Object name",
  "occurrences": [
    "2013-09-13T14:00:00",
    "2013-09-20T14:00:00",
    "2013-09-27T14:00:00"
  ]
},
.
.
.
]

通常我能够解析和存储Core Data收到的对象。我只对嵌套数组出现有问题。

您有什么建议我应该如何正确解析和存储此集合?

1 个答案:

答案 0 :(得分:0)

我想你想把它映射到日期。要做到这一点,通常需要一个容器。您还可以简单地映射到字符串数组并进行后处理。

1)字符串数组:

只需向目标对象添加NSArray属性,然后将occurrences映射到该目标对象即可。这将是Core Data中的可转换属性(可能是瞬态的)。现在,您可以迭代数组并创建日期(可以在willSave中完成)。

2)与日期的关系:

创建一个新实体,将其命名为Occurrence。它有一个日期属性。使用'nil'键路径映射来创建此Occurrence实体的实例,并将每个日期映射到新实例(将为您完成转换为NSDate)。您没有身份,因此您唯一的选择是使用日期作为唯一标识符。