gpt4 book ai didi

ios - NSInternalInconsistencyException在将核心数据添加到应用程序时

转载 作者:行者123 更新时间:2023-12-01 18:26:50 28 4
gpt4 key购买 nike

我正在将Core Data添加到现有应用程序中,请按照以下步骤操作:

  • 导入框架
  • 创建模型

  • 除了设置堆栈,我还使用以下代码:
    - (NSManagedObjectContext *) managedObjectContext {
    if (managedObjectContext != nil) {
    return managedObjectContext;
    }
    NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
    if (coordinator != nil) {
    managedObjectContext = [[NSManagedObjectContext alloc] init];
    [managedObjectContext setPersistentStoreCoordinator: coordinator];
    }

    return managedObjectContext;
    }

    - (NSManagedObjectModel *)managedObjectModel {
    if (managedObjectModel != nil) {
    return managedObjectModel;
    }
    managedObjectModel = [[NSManagedObjectModel mergedModelFromBundles:nil] retain];

    return managedObjectModel;
    }

    -(NSPersistentStoreCoordinator *)persistentStoreCoordinator {

    if (persistentStoreCoordinator != nil) {
    return persistentStoreCoordinator;
    }

    NSURL *storeUrl = [NSURL fileURLWithPath: [[self applicationDocumentsDirectory] stringByAppendingPathComponent: @"xxxxx.sqlite"]];

    NSError *error = nil;
    persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel: [self managedObjectModel]];
    if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:nil error:&error]) {
    // Handle error
    }

    return persistentStoreCoordinator;
    }

    - (NSString *)applicationDocumentsDirectory {
    return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
    }

    但是当我尝试保存数据时,我得到以下执行

    由于未捕获的异常而终止应用程序
    NSInternalInconsistencyException,原因:“此
    NSPersistentStoreCoordinator没有持久存储。这不可以
    执行保存操作。”

    最佳答案

    这个问题可能是由于您已经运行了应用程序,然后又更改了模型。

    最简单的解决方案是从模拟器/设备中删除应用程序,然后执行清理,然后重试。

    更加正确的解决方案是按照I keep on getting "save operation failure" after any change on my XCode Data Model中的建议处理光迁移。

    一个简单的建议是按照XCode4 and Core Data: How to enable SQL Debugging中的建议启用核心数据日志,并查看底层情况。

    希望能有所帮助。

    关于ios - NSInternalInconsistencyException在将核心数据添加到应用程序时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12879707/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com