0

我有以下从 RestService 获得的 JSON 结构:

{
    "customer": {
        "id": "123456",
        [more attributes ....]
        "items": [
            {
                "id": "1234",
            },
            {
                "id": "2345",
            }
            [more items...]
        ]
    }
}

我使用 RestKit 成功映射到核心数据。然后,我从另一个 RestService (我无法更改)获取有关 items 数组中单个项目的更多详细信息。JSON答案看起来像

{
    "customer": {
        "id: "123456",
        "item": {
            "id": "1234",
            "name": "foo",
            [other attributes...]
        }
    }
}

现在的问题是:我如何映射第二个答案,以便将单个项目添加到 items 数组中(或者如果它已经存在则更新)?

感谢您的任何想法!

4

2 回答 2

0

如果您设置适当primaryKeyAttributeRKManagedObjectMapping对象,您应该能够按照您的意愿执行映射。如果您发布一些映射代码,实际上会更容易帮助您,但这就是我的意思

  1. 为您的客户对象创建映射,定义所有可能的属性并声明mappingObject.primaryKeyAttribute = @"id"
  2. 使用第一个请求(或您所说的第一个答案)执行映射
  3. 第一个映射步骤完成后执行第二个请求

这应该最初创建您想要的客户对象,然后更新它们。

于 2012-05-02T15:22:36.623 回答
0

如果您已经知道如何将 JSON 映射到 Core Data,那么剩下的就是获取您想要添加项目属性的对象(使用 id 或其他东西),然后设置它,重写旧的或添加新字段。这只是一般方法

于 2012-04-24T09:48:18.543 回答