使用RestKit中的RKObjectManager从核心数据中获取

时间:2014-02-24 19:37:56

标签: ios core-data restkit nsmanagedobject restkit-0.20

我试图了解RestKit如何获取对象。据我所知,当我打电话时,

[[RKObjectManager sharedManager] getObjectsAtPath:@"/mypath/objects" parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
        // Use objects that are returned.
    } failure:^(RKObjectRequestOperation *operation, NSError *error) {
        // Handle error
    }];

Restkit将尝试从Web服务加载指定路径的对象,并在检索到对象后调用成功块。它还将在调用成功块之前使用我提供的映射更新核心数据对象图。如果我只想要核心数据中的对象怎么办?我如何访问这些对象?我是否应该使用sharedManager的managedObjectStore的mainQueueManagedObjectContext直接在其上执行NSFetchRequests,如果我希望更新Core Data持久性存储,则只调用getObjectsAtPath:parameters:success:failure:

1 个答案:

答案 0 :(得分:2)

  

据我了解

是的,基本上。 RestKit将从指定路径的服务器获取数据,对其进行反序列化,并根据映射和响应代码/描述符将其映射到对象中。如果您已指定使用Core Data,那么它将在调用成功块之前保存结果。

  

如果我只想要核心数据中的对象

,该怎么办?

然后您不使用RestKit,只需访问mainQueueManagedObjectContext,通常使用NSFetchedResultsController