ios – 当RKObjectManager无法发布对象时,如何丢弃一个对象中的CoreData更改

前端之家收集整理的这篇文章主要介绍了ios – 当RKObjectManager无法发布对象时,如何丢弃一个对象中的CoreData更改前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在RKObjectManager中此对象的POST / PUT请求失败时,如何丢弃对NSManagedObject的实例所做的CoreData更改?
NSManagedObject *object = ...;
[object setValue:@"test" forKey: @"test"];
[[RKObjectManager sharedManager] postObject:object 
                                 parameters:nil 
                                    success:^(RKObjectRequestOperation *operation,RKMappingResult *mappingResult) { NSLog(@"success,nothing to do"); }
                                    failure:^(RKObjectRequestOperation *operation,NSError *error) { 
  // I want to discard changes made to object here 
}

更新:RestKit 0.20

解决方法

我对RKObjectManager一无所知,但为了放弃对NSManagedObject实例的更改,可以调用

[object.managedObjectContext refreshObject:object mergeChanges:NO]

这将丢弃所有更改并将对象转为故障.

see here

猜你在找的iOS相关文章