【发布时间】:2013-04-17 07:55:32
【问题描述】:
我有以下代码:
NSMutableURLRequest *request = [[ObjectManager sharedInstance] requestWithObject:managedObj
method:RKRequestMethodPUT path:nil parameters:nil];
(在我的 ObjectManager 中有该对象的注册请求和响应描述符)。
然后我创建一个带有该请求的RKManagedObjectRequestOperation 和[NSManagedObjectContext MR_defaultContext] 作为我的上下文,并将请求排入队列。
响应成功后,模型对象会更新为新数据,但不会保存到 CoreData。我必须在 success 块中调用 [[NSManagedObjectContext MR_defaultContext] saveToPersistentStore:nil]; 才能保存它。
当我发出POST 请求时,会在CoreData 中创建新模型。当我更新模型时,它不会使用 PUT 保存到 CoreData。
【问题讨论】:
-
你为什么不使用 RKManagedObjectStore mainQueueManagedObjectContext?为什么不使用更高级别的 API?
-
你能举一个使用更高级别API的例子吗?
-
我们正在使用带有 MagicalRecord 的 RestKit,所以这可能就是我们不使用它们的原因。无论如何,我们通过分配“MR_contextForCurrentThread”而不是默认上下文来解决这个问题。