使用RestKit 0.20.2

例:
我建立了2个核心数据实体“专辑”和“歌曲”,并建立了关系,以定义一张专辑包含多首歌曲,而一首歌曲属于一张专辑。

我进行了实体映射,并且可以成功显示相册列表。

我打电话 :

/albums获取相册

/albums/:albumId/songs获取albumId指定的专辑中的歌曲

我从来没有一个JSON文档同时保存一张专辑及其歌曲。 (github上所有可用的RestKit示例都假设您使用一个将所有实体都放在一起的JSON文档)

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

最佳答案

您需要使用RKObjectManager和路由。

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

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


然后,您可以添加关系映射以将歌曲连接到适当的专辑:

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


其中,@"identity"是属性的名称,该属性用于保存相册管理对象上的身份。

09-27 03:28