Nat*_*kin 6 mysql iphone core-data ipad ios
我正在为我正在开发的iPad应用程序设置基本同步服务.目标是在iPad应用程序的多个实例中保持数据一致,并在Web上拥有只读版本的数据,从而推出自定义解决方案.
目前的流程如下:
这一切似乎都很好.我的问题是如何使用此方法跟踪已删除的对象?我猜我可以为每个实体添加一个'已删除'标志,并在客户端删除某些内容时设置此标志,然后我可以将该更改推送到服务器并使用其余的同步数据.同步完成后,客户端实际上可以删除这些实体.我的问题是:
如何保存带有UUID和已创建/更新/删除字段的增量历史记录表,可能每个更新都有一个修订号?因此,您保留自上次成功同步以来的一小部分更改清单.
这样,如果删除对象,则可以在增量历史记录表中添加已删除的UUID的条目,并将其标记为已删除.与创建和更新的对象相同,您只需要检查增量表以查看服务器需要删除,更新,创建等的项目.您甚至可以在服务器上存储每个修订版本以支持回滚到以前的版本未来,如果你喜欢它.
我认为修订号比依赖客户端的时钟更好,可能会手动更改.
您可以使用NSManagedObjectContext的insertedObjects,updatedObjects,deletedObjects方法在每个保存过程之前创建delta对象:)
我的2美分