当打开现有数据库并随后启动simperium时,不会将现有实体加载到服务器。仅加载新创建的实体。
是否可以将Simperium添加到现有数据库,并将所有尚未加载的实体上载到服务器?我正在考虑将Simperium添加到现有的应用程序中,在该应用程序中,当前数据必须在首次启动时上传。
发布于 2012-05-14 12:55:28
这是打算支持的(已经在应用程序Simplenote中完成了),但也可能有一些东西不起作用。
当您的应用程序启动时,您是否会看到一条日志消息,显示您希望Simperium看到的现有实体的"Simperium managing X MyEntity instances“?X是否与数据库中现有对象的数量相匹配?
Simperium在启动时执行验证步骤。如果在您的模型中检测到的作为SPManagedObject子类的任何现有对象缺少有效的simperiumKey,则将创建一个。
目前,此验证过程不会自动保存生成的新密钥。您是否尝试过在Simperium首次启动后保存上下文,以查看是否会触发更新?
此外,如果您有一个现有的惟一ID,希望在验证过程中保留在getSimperiumKeyFromLegacyKey中,那么可以在object子类上实现一个名为Simperium的无文档记录的方法。
https://stackoverflow.com/questions/10572299
复制相似问题