RestKit映射嵌套属性失败

时间:2015-08-14 10:46:01

标签: ios json swift core-data restkit-0.20

我已获得以下JSON有效负载:

"user": {
  "id": 1,
  "username": "bla",
  "first_name": "bla",
  "self": {
    "info": "MyInfo",
    "website": "MyWebsite"
  },
  //... some more properties doesn't matter
}

我尝试将嵌套对象self映射到用户模型中,并执行以下属性映射:

mapping.addAttributeMappingsFromDictionary(
            ["id"                : "id",
             "username"          : "username",
             "first_name"        : "firstname",
             "self.info"         : "info",
             "self.website"      : "website"])

现在当我触发GET时 - 请求所有地图都很好,而不是嵌套属性self.infoself.website。当我做一个关系映射它也可以工作但我需要一个单独的模型,这些信息有点难看。

我使用的是RestKit 0.25

1 个答案:

答案 0 :(得分:0)

我刚刚遇到问题依赖于RestKit用于映射的方法[object valueForKeyPath:]。当使用self调用对象时,此方法返回对象本身,因此当我将JSON keyPath更改为不同的内容时,例如personal.info它按预期工作!我认为这在最近的RestKit版本中发生了变化,因为使用RestKit 0.23.x的另一个应用程序使用self密钥路径。