loadObjectsAtResourcePath(RestKit)

时间:2011-11-15 18:48:13

标签: objective-c ios xcode restkit

我有这样的方法。

- (void)loadData {  

    RKObjectManager* manager = [RKObjectManager objectManagerWithBaseURL:@"http://localhost:8080/activiti-rest/service"];  

    [manager loadObjectsAtResourcePath:@"/process-definitions?start=0&size=10&sort=id&order=asc" objectClass:[Data class] delegate:self];

}  

我收到错误消息:

  

实例方法'-loadObjectsAtResourcePath:objectClass:委托'未找到('返回类型默认为'id'')。

有人可以帮我解决一下如何调用loadObjectsAtResourcePath函数吗?

4 个答案:

答案 0 :(得分:1)

也许您想手动定义映射。然后做这样的事情:

RKObjectMapping *mapping = [[[RKObjectManager sharedManager] mappingProvider] objectMappingForClass:[Data class]];
RKObjectLoader *loader = [[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/process-definitions?start=0&size=10&sort=id&order=asc" objectMapping:mapping delegate:self];

不要忘记将基本资源路径设置为RKObjectManager单例。

答案 1 :(得分:1)

我不得不使用其中包含objectMapping的原型,因为我试图将响应映射到我自己的名为Data的映射。 所以我创建了一个RKObjectMapping对象,配置为我自己的映射类,然后使用这个函数。

    RKObjectMapping* mapping = [RKObjectMapping mappingForClass:[Data class]];
    RKObjectManager* manager = [RKObjectManager objectManagerWithBaseURL:@"http://localhost:8080/activiti-rest/service"];  
   [manager loadObjectsAtResourcePath:@"/process-definitions?start=0&size=10&sort=id&order=asc" objectMapping:mapping delegate:self]  ;

有效!

答案 2 :(得分:0)

不知道RestKit这听起来像一个简单的标题问题。查看定义“RKObjectManager”的标题。 (Cmd在XCode中单击它以确保它在您的项目中可用。)仔细检查方法定义并确保正确调用它。始终使用自动完成来调用方法。

答案 3 :(得分:0)

您的对象/类是否在界面中实现了?