3

假设我有一个 API,users/1/items它返回一个ID 为 1items的列表。user

假设 API 响应如下:

{
    "items": [
        {
            "id": "1",
            "description": "Some item"
        }
    ]
}

请注意,响应不包含user_idfor 关系映射。RestKit 0.20 中是否可以映射到user_idURL 中的 (在本例中为 1)?如果是这样,怎么做?我在 docs/wiki 中找不到任何提及。

4

2 回答 2

5

这是。您需要使用RKRouter该类(通常与 一起使用RKObjectManager)。使用路由和路径模式后,您可以在映射定义中使用路由元数据。

RKRouter文档

路由配置示例

如何使用元数据(“元数据映射”部分)

其他元数据信息

于 2013-06-26T16:28:21.353 回答
1

您实际上可以使用 RestKit 调用Relationship Routes的 .

这是一个简短的例子:

RKRoute *aRoute = [RKRoute routeWithRelationshipName:@"user-items-relationship"
                              objectClass:User.class
                              pathPattern:@"users/:userid/items"
                                   method:RKRequestMethodGET];

然后你会得到这样的项目:

[[RKObjectManager sharedManager] getObjectsAtPathForRelationship:@"user-items-relationship"
                                                        ofObject:someUser
                                                      parameters:nil
                                                         success:^(RKObjectRequestOperation *operation, RKMappingResult *result)
 {
     NSLog("I win");
 }
                                                         failure:^(RKObjectRequestOperation *operation, NSError *error)
 {
     NSLog("I lose");         
 }];
于 2014-03-06T22:20:23.413 回答