我将服务器上的对象作为JSON发布,其中包含一些属性和一个作为主键属性的ID。我也在使用Core Data在本地保存所有对象。
问题在于,当我第一次创建POST对象时,我知道所有属性,但只知道唯一ID。 ID在服务器端设置,当我从服务器获得响应时,我最终在我的数据库中有两个对象: 一个ID为0,一个具有真实ID。
有没有办法让restkit / coredata将这两个对象视为相同,或者不将第一个对象保存在数据库中?
答案 0 :(得分:0)
您可以使用postObject: usingBlock
方法并为此对象加载器分配目标对象。
[[RKObjectManager sharedManager] postObject:myObject usingBlock:^(RKObjectLoader *loader) {
loader.targetObject = myObject;
loader.delegate = self;
loader.objectMapping = [[RKObjectManager sharedManager].mappingProvider objectMappingForClass:[myObject class]];
}
请注意,每次运行该方法时,您还必须在代码块中手动设置委托。