【发布时间】:2013-07-17 03:15:10
【问题描述】:
我有两门课
- 具有属性 id、论文(论文关系)的作者...
- 具有属性 id、mainAuthor(作者关系)、作者(作者关系)的论文...
并希望将一些 JSON 映射到它
"authors": [
{
"id": 123,
"papers": [
{
"id": 1,
"main_author_id": 123,
...
},
...
]
},
...
]
问题在于 JSON 的结构不像
"authors": [
{
"id": 123,
"papers": [
{
"id": 1,
"main_author": {
"id": 123
}
...
},
...
]
},
...
]
这样我就可以轻松地映射事物(注意两个 JSON 示例的 *main_author* 部分)。如here 所述,我尝试使用没有键路径的映射此值:
[authorMapping addAttributeMappingToKeyOfRepresentationFromAttribute:@"main_author_id"];
[authorMapping addAttributeMappingsFromDictionary:@{@"(main_author_id)": @"id"}];
但我收到一条错误消息,告诉我 keyPath id 已经存在,我可能不会为此 keyPath 添加第二个映射。我完全理解这个错误,但我不知道如何从 *main_author_id* 映射回 id。更改数据源可能是最好的解决方案,但遗憾的是这是不可能的。
非常欢迎任何建议!谢谢!
【问题讨论】:
-
您是否查看过外键映射来设置关系?
-
@Wain 这太棒了,之前没想到!随意发布这个作为答案,我很高兴接受这个作为答案!
标签: objective-c restkit object-object-mapping