如何定义RestKit中不在同一JSON文档中的实体之间的关系映射?

时间:2013-06-20 07:55:39

标签: ios core-data restkit restkit-0.20

使用RestKit 0.20.2

实施例: 我设置了2个核心数据实体' Album'和歌曲'以及定义一张专辑有几首歌曲和一首歌属于一张专辑的关系。

我制作了实体映射,我可以成功显示专辑列表。

我打电话:

/albums获取相册

/albums/:albumId/songs获取albumId

指定的相册歌曲

我从来没有一个JSON文档同时存放一个专辑及其歌曲。 (github上提供的所有RestKit示例都假设您处理将所有实体放在一起的单个JSON文档)

如何设置两个实体之间的关系,以便让RestKit在我的Core Data对象存储中正确写入?

1 个答案:

答案 0 :(得分:2)

您需要使用RKObjectManager和路由。

配置映射时,include和item从路由URL中提取albumId并将其存储到歌曲的临时属性中:

@"@metadata.routing.parameters.albumId": @"connectionAlbumId",

然后,您可以添加关系映射以将歌曲连接到相应的相册:

[songMapping addConnectionForRelationship:@"album" connectedBy:@{ @"connectionAlbumId": @"identity" }];

其中@"identity"是在相册管理对象上保留身份的属性的名称。

相关问题