RestKit没有CoreData的侧载JSON关联

时间:2014-07-01 18:02:34

标签: ios objective-c json restkit restkit-0.20

我试图让RestKit在我的JSON中使用一些侧载关联,JSON如下所示:

{
    "companies": [
        {
            "id": 1,
            "name": "420...",
            "street": "420 Kush St.",
            "city": "Seattle",
            "state": "WA",
            "zip_code": "12345"
        }
    ],
    "user": {
        "id": 1,
        "email": "test@example.com",
        "token": "1234567890",
        "company_id": 1
    }
}

我没有使用CoreData集成,需要我的用户的公司属性来填写"公司"以上JSON的关键。我当前的用户映射如下所示:

RKObjectMapping *mapping = [RKObjectMapping mappingForClass:[GBUser class]];
[mapping addAttributeMappingsFromDictionary:@{
                                              @"id": @"userId",
                                              @"email": @"email"
                                              }];

NSIndexSet *statusCodes = RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful);
return [RKResponseDescriptor responseDescriptorWithMapping:mapping method:RKRequestMethodAny pathPattern:@"/api/v0/me" keyPath:@"user" statusCodes:statusCodes];

1 个答案:

答案 0 :(得分:1)

最简单的选择是在成功块中编写几行代码以关联映射结果中的对象。您将使用2个响应描述符分别映射用户和公司,然后在映射完成后将它们组合起来。