更改应用程序的当前CoreData源

时间:2016-09-23 08:55:17

标签: ios core-data core-data-migration

对于我的应用程序,我使用CoreData存储用户的信息,可能有多个用户帐户。所以我需要在不同的文件夹中创建多个CoreData文件。

用户注销,应用返回登录页面。当他们使用不同的帐户登录时,我需要创建另一个CoreData源并将应用程序的当前CoreData源更改为新的CoreData源。

CoreData Source

我检查了这些但无法理解的概念:

我应该遵循什么逻辑才能实现这一目标。

由于

1 个答案:

答案 0 :(得分:0)

只需将核心数据存储名称基于您的用户登录名并继续正常进行。

因此,当用户注销时,请确保删除任何NSManagedObjectContext,NSPersistentStoreCoordinator和NSPersistentStore。然后重新初始化新用户,从新商店网址开始,如下所示。

NSURL *store = [[self documentsDirectory] URLByAppendingPathComponent:[NSString stringWithFormat:@"%@_account.sqlite", userName]];