检查此JSON文档:
{
"result": {
"playlists": [
{
"name": "p1",
"songs": [
{
"title": "t",
"artist": "a"
},
{
"title": "t",
"artist": "a"
}
]
},
{
"name": "p2",
"songs": [
{
"title": "t",
"artist": "a"
},
{
"title": "t",
"artist": "a"
}
]
}
]
}
}
我是否可以仅映射此文档中的“歌曲”而不创建除“歌曲”之外的任何其他实体。在这种情况下,我不关心播放列表。 我为Song实体做了一个RKEntityMapping。 现在要制作RKResponseDescriptor我应该提供什么keyPath来匹配所有“Song”实体?
我尝试了“result.playlists.songs”,但这不起作用。
RKEntityMapping *songMapping = [RKEntityMapping mappingForEntityForName:@"Song"
inManagedObjectStore:[RKManagedObjectStore defaultStore]];
[songMapping addAttributeMappingsFromArray:@[@"title", @"artist"]];
RKResponseDescriptor *songsResponseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:songMapping
pathPattern:@"/playlists"
keyPath:@"result.playlists.songs"
statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
[[RKObjectManager sharedManager] addResponseDescriptor:songsResponseDescriptor];
RestKit足够强大吗?
有没有办法指定“播放列表”是一个数组,并且必须检查所有对象的“songs”属性?
我知道如果我将播放列表与“PlayList”实体相匹配,“result.playlists”会有效,但我想跳过那个并深入了解。有可能吗?