我已经为RKObjectMappingProvider子类配置了一系列对象映射,这些对象映射将各种服务端点映射到本地Core Data实体和持久性存储。假设我有一个服务端点/api/workorders,并且我使用loadObjectsAtResourcePath:usingBlock:来获取X个工作单的列表并坚持使用Core Data。接下来,用户使用该应用修改其中的两个实体,但不将更改推回服务。

如果用户再次调用/api/workorders来获取最新的工作单,是否有办法让RestKit自动覆盖对已更改实体的本地修改?

最佳答案

简短的答案是不,您必须自己做,它很快就会变得讨厌。

您将需要覆盖自定义托管对象类的设置器。

This kind of thing.

您需要一个属性来知道它已被更新。您将需要创建它并在更新实体时进行设置。我会在行级执行此操作
然后检查属性,仅在未设置标志的情况下进行更新。
当然,如果用户想再次更新该值,则需要处理这种情况:)
Restkit很棒,但是不能为您处理完全同步。

关于ios - 我可以防止RestKit + CoreData覆盖本地实体更改吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10692550/

10-14 20:45
查看更多