【发布时间】:2012-10-26 12:12:46
【问题描述】:
从RestKit官方页面Restkit Github我找到以下重置商店:
- (void) resetSavedDatabase:(id)sender {
RKManagedObjectStore *objectStore = [[RKObjectManager sharedManager] objectStore];
[objectStore resetPersistentStores];
[objectStore save:nil];
}
这行得通。但是,如果我在此方法之后执行以下操作,则会出现错误:
TestEntity *testEntity = [TestEntity createEntity];
testEntity.name = @"TestEntity";
NSError *error;
[[RKObjectManager sharedManager].objectStore save:&error];
错误:
由于未捕获的异常而终止应用程序 'NSInvalidArgumentException',原因:'对象的持久存储是 无法从此 NSManagedObjectContext 的协调器访问'
一切都在后台调用。这个想法是,我想预加载一些 sqlite 数据,然后将它们与我的同步逻辑同步。 (当我不删除持久存储时,逻辑是有效的)
有人可以帮我吗?
【问题讨论】:
-
您删除了商店。以与第一次运行时相同的方式重新创建它。
-
@Paul de Lange,我添加了超链接。
-
@Mundi,正如我在 RestKit 代码中看到的,deletePersistentStore 会自动创建一个新商店
-
@Andy
deletePersistentStore已更改为 resetPersistentStores.. 请相应更新您的问题
标签: objective-c ios restkit