RestKit / Core Data - 重置后备存储中的对象,而不是更新

时间:2013-06-04 19:52:08

标签: ios core-data restkit restkit-0.20

我在iOS应用中更新本地后备存储中的对象时遇到了问题。假设我有一个对象(采用JSON格式)

{
  attr1: 'Hello',
  attr2: 'World'
}

我的iOS应用程序中相应的NSManagedObject有两个属性:NSString * attr1和attr2。在这个初始的JSON推送中,对象在attr1和attr2中获得正确的值'Hello'和'World'。我的后端服务器消息中的下一个返回以下JSON:

{
  attr1: 'Hello2'
}

这会将我的对象的attr1更新为'Hello2',但我的attr2保持不变(即'World')。我希望这个无效。换句话说,我不希望对NSManagedObject进行“更新”,而是希望完全重置。有没有办法实现这个目标?我尝试了一些事情,比如显式地使属性无效并保存NSManagedObjectContext,但这种方式似乎并不存在。我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

你正在做正确的事。 Nullify“手动”(或通过在NSManagedObject子类中自动执行此操作),并保存为持久。

如果您没有看到预期的错误,则错误必须与您保存的方式相同,或者与您显示数据的方式相同。或者您的对象在显示之前可能会再次更新。