Restkit:在所有的请求
问题描述:
执行Restkit请求与“无”的keyPath工作正常后得到mappingResult与“
"<null>" = "<EstablishmentReservationsMapping: 0x7fc42d1140f0>"
但我仍然得到它在所有接下来的请求mappingResults,像这样:
"<null>" = "<EstablishmentReservationsMapping: 0x7fc42d1140f0>";
"my_establishments" = (
"<Establishment: 0x7fc42f89ae10>",
"<Establishment: 0x7fc42f89b220>",
"<Establishment: 0x7fc42f89b8f0>",
"<Establishment: 0x7fc42f90bd10>",
"<Establishment: 0x7fc42f990d60>",
"<Establishment: 0x7fc42f93a650>",
"<Establishment: 0x7fc42f9e6bb0>",
"<Establishment: 0x7fc42fe9a0a0>",
"<Establishment: 0x7fc42f9dcbc0>"
);
我想要得到的只是:
"my_establishments" = (
"<Establishment: 0x7fc42f89ae10>",
"<Establishment: 0x7fc42f89b220>",
"<Establishment: 0x7fc42f89b8f0>",
"<Establishment: 0x7fc42f90bd10>",
"<Establishment: 0x7fc42f990d60>",
"<Establishment: 0x7fc42f93a650>",
"<Establishment: 0x7fc42f9e6bb0>",
"<Establishment: 0x7fc42fe9a0a0>",
"<Establishment: 0x7fc42f9dcbc0>"
);
这是第二个请求的响应responseDescriptor:
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:establishmentMapping method:RKRequestMethodGET pathPattern:nil keyPath:@"my_establishments" statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
[_objectManager addResponseDescriptor:responseDescriptor];
答
的问题是pathPattern:nil
因为这意味着所有的响应描述符总是被认为是对每个响应。这导致在许多情况下创建空对象。
要修复问题,请将路径模式添加到每个响应描述符中,以便RestKit能够确定它应该使用哪一个。
您的解决方案解决了我的问题,我为所有请求响应描述符添加了路径模式,并完成了。 – Abdel 2015-02-10 11:50:29