没有迁移的核心数据变更数据模型

时间:2015-03-22 13:36:47

标签: ios objective-c core-data

在我的应用程序的最后一次更新中,我更改了CoreData Data Modell。不幸的是我忘记了迁移,我丢失了旧版本的源代码。所以我现在有了挑战来解决问题。首先 - CoreData中保存的数据并不重要,我考虑删除momd-File,但问题是,应用程序崩溃,需要重新启动。是否可以正确删除文件并创建一个新文件而不会崩溃?

这里是Code如何设法删除momd-File。我在AppDelegates - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中执行此操作。

if (![[NSUserDefaults standardUserDefaults] boolForKey:@"v1.0.4"]) {

    NSFileManager * fileManager = [NSFileManager defaultManager];
    NSURL * storeURL = [[NSBundle mainBundle] URLForResource:@"Vocabulary" withExtension:@"momd"];
    NSError * error;

    if ([fileManager fileExistsAtPath:storeURL.path])
        [fileManager removeItemAtURL:storeURL error:&error];

}

1 个答案:

答案 0 :(得分:0)

非常感谢,我现在正在删除.sqlite文件,它就像我想要的那样!感谢@Wain和@aroth

NSFileManager * fileManager = [NSFileManager defaultManager];
    NSURL * storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"Vocabulary.sqlite"];
    NSError * error;
    if ([fileManager fileExistsAtPath:storeURL.path])
        [fileManager removeItemAtURL:storeURL error:&error];