无法创建持久存储协调器 [英] can't create persistent store coordinator

查看:111
本文介绍了无法创建持久存储协调器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我收到以下错误:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyExprojectception', reason: 'Managed object store failed to create persistent store coordinator: Error Domain=NSCocoaErrorDomain Code=134130 "The operation couldn’t be completed. (Cocoa error 134130.)" UserInfo=0x6eb53f0 {URL=/Users/user/Library/Application Support/iPhone Simulator/4.3.2/Applications/4EFD7570-AD87-48E8-8606-1D5633F65AD9/Documents/DiscussionBoard.sqlite, metadata=<CFBasicHash 0x6e7b610 [0x1957400]>{type = immutable dict, count = 7,
entries =>
    2 : <CFString 0x6e7bc80 [0x1957400]>{contents = "NSStoreModelVersionIdentifiers"} = <CFArray 0x6e7bd60 [0x1957400]>{type = immutable, count = 1, values = (
    0 : <CFString 0x194eed0 [0x1957400]>{contents = ""}
)}
    4 : <CFString 0x6e7bcb0 [0x1957400]>{contents = "NSPersistenceFrameworkVersion"} = <CFNumber 0x6e7b820 [0x1957400]>{value = +320, type = kCFNumberSInt64Type}
    6 : <CFString 0x6e7bce0 [0x1957400]>{contents = "NSStoreModelVersionHashes"} = <CFBasicHash 0x6e7c310 [0x1957400]>{type = immutable dict, count = 13,
entries =>
    0 : <CFString 0x6e7bd80 [0x1957400]>{contents = "CVImage"} = <CFData 0x6e7bf00 [0x1957400]>{length = 32, capacity = 32, bytes = 0xbd556295681226e6b1fd6142e2e7bfcc ... e38b423dd3965969}
    2 : <CFString 0x6e7bda0 [0x1957400]>{contents = "CVMembers"} = <CFData 0x6e7bf50 [0x1957400]>{length = 32, capacity = 32, bytes = 0xa3d504782e9111ed01b1c02575c48119 ... 1bd1d59e42507652}
    4 : <CFString 0x6e7bdc0 [0x1957400]>{contents = "CVMessages"} = <CFData 0x6e7bfa0 [0x1957400]>{length = 32, capacity = 32, bytes = 0xfbd5da9b0fc0ea188505807aea912e83 ... e3a42fa8fbdf416c}
    8 : <CFString 0x6e7bde0 [0x1957400]>{contents = "CVEmbed"} = <CFData 0x6e7bff0 [0x1957400]>{length = 32, capacity = 32, bytes = 0x5d65d864e7881875c52882a8fd709079 ... e3ad8204d4ca3de3}
    9 : <CFString 0x6e7be00 [0x1957400]>{contents = "CVGroup"} = <CFData 0x6e7c040 [0x1957400]>{length = 32, capacity = 32, bytes = 0xb2989b51004a22a8fb78971436462bcc ... 39d14fd18d892843}
    10 : <CFString 0x6e7be20 [0x1957400]>{contents = "CVImgur"} = <CFData 0x6e7c090 [0x1957400]>{length = 32, capacity = 32, bytes = 0x57cb45112309b9fce595cbee14c87e98 ... f88cd7d4eadeb9aa}
    12 : <CFString 0x6e7be40 [0x1957400]>{contents = "CVLinks"} = <CFData 0x6e7c0e0 [0x1957400]>{length = 32, capacity = 32, bytes = 0x715c27157179226a0a44cd0015b9017d ... 26a06c18c21630d3}
    13 : <CFString 0x6e7b7c0 [0x1957400]>{contents = "CVStar"} = <CFData 0x6e7c130 [0x1957400]>{length = 32, capacity = 32, bytes = 0xeaba2443e38c48975f8e1eda97788ce3 ... 6939185adf9f8bc4}
    14 : <CFString 0x6e7be60 [0x1957400]>{contents = "CVLogin"} = <CFData 0x6e7c180 [0x1957400]>{length = 32, capacity = 32, bytes = 0x3089c83eba00f29b13543cdfa16514d7 ... db609adb46524cab}
    16 : <CFString 0x6e7be80 [0x1957400]>{contents = "CVTopics"} = <CFData 0x6e7c1d0 [0x1957400]>{length = 32, capacity = 32, bytes = 0x6ba8c6c71281ae9f3731a180cb0509cb ... 3aedf32173e19adf}
    17 : <CFString 0x6e7bea0 [0x1957400]>{contents = "CVConversation"} = <CFData 0x6e7c220 [0x1957400]>{length = 32, capacity = 32, bytes = 0xac552b4d9d0a2c0425facda397d0f3c1 ... 8a7b7d36c9a14af3}
    20 : <CFString 0x6e7bec0 [0x1957400]>{contents = "CVMessage"} = <CFData 0x6e7c270 [0x1957400]>{length = 32, capacity = 32, bytes = 0x80e0118b52f9679904a359ce469b116a ... ad08d1f238e71130}
    21 : <CFString 0x6e7bee0 [0x1957400]>{contents = "CVTopic"} = <CFData 0x6e7c2c0 [0x1957400]>{length = 32, capacity = 32, bytes = 0xe1898a56a02e523bc8879e812cecd756 ... 339f8023561d35f9}
}

    7 : <CFString 0x7888b0 [0x1957400]>{contents = "NSStoreUUID"} = <CFString 0x6e7b970 [0x1957400]>{contents = "BDA8B03E-81DA-472C-8966-936DC080900F"}
    8 : <CFString 0x788720 [0x1957400]>{contents = "NSStoreType"} = <CFString 0x7888f0 [0x1957400]>{contents = "SQLite"}
    9 : <CFString 0x6e7bd10 [0x1957400]>{contents = "NSStoreModelVersionHashesVersion"} = <CFNumber 0x5f70a40 [0x1957400]>{value = +3, type = kCFNumberSInt32Type}
    10 : <CFString 0x6e7bd40 [0x1957400]>{contents = "_NSAutoVacuumLevel"} = <CFString 0x6e7c410 [0x1957400]>{contents = "2"}
}
, reason=Can't find model for source store}'

它说找不到源存储的模型?这是什么意思?

It says can't find model for source store? What does this mean?

代码是:

- (void)createPersistentStoreCoordinator {
    NSURL *storeUrl = [NSURL fileURLWithPath:self.pathToStoreFile];

    NSError *error;
    _persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:_managedObjectModel];

    // Allow inferred migration from the original version of the application.
    NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
                             [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
                             [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];

    if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:options error:&error]) {
        if (self.delegate != nil && [self.delegate respondsToSelector:@selector(managedObjectStore:didFailToCreatePersistentStoreCoordinatorWithError:)]) {
            [self.delegate managedObjectStore:self didFailToCreatePersistentStoreCoordinatorWithError:error];
        } else {
            NSAssert(NO, @"Managed object store failed to create persistent store coordinator: %@", error); //fails right here
        }
    }
}


推荐答案

您应该检查的事情:


  • 确保已正确加载上下文,并且.momd文件

此外,当处理CoreData时,有一个有趣的userinfo,它包含了很多有用的信息:

Also, when dealing with CoreData there is a interesting userinfo which holds much useful informations:

NSDictionary *ui = [error userInfo];
        for(NSString *err in [ui keyEnumerator]) {
            NSLog(@"err:%@",[ui objectForKey:err]);
        }

这篇关于无法创建持久存储协调器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆