0

私は巨大なプロジェクトに割り当てられている初心者です。修正が必要な小さなバグを見つけましたが、正確な方法がわかりません。

よし、ここだ。issueNumberXcode のコア データ モデルの属性は に設定されていInteger 64ます。に変更する必要があるStringため、バグは修正されますが、属性タイプを からInteger 64に変更するStringと、次のように始まる巨大な出力でアプリがクラッシュします。

CoreData: エラー: -addPersistentStoreWithType:SQLite 構成:(null) URL:file:///Users/Apple/Library/Developer/CoreSimulator/Devices/67D17D00-2AF8-4BC4-ABB7-091C95D02F35/data/Containers/Data/Application/ B94B1310-4A63-4F91-AE7B-5F625697B3E2/Library/iMagDocument.sqlite オプション:{ NSInferMappingModelAutomaticallyOption = 1; NSMigratePersistentStoresAutomaticallyOption = 1; NSSQLitePragmasOption = { 同期 = オフ; }; } ... 返されたエラー Error Domain=NSCocoaErrorDomain Code=134130 "The operation could not be completed. (Cocoa error 134130.)" UserInfo=0x7f405ef0 {URL=file:///Users/Apple/Library/Developer/CoreSimulator/デバイス/67D17D00-2AF8-4BC4-ABB7-091C95D02F35/データ/コンテナー/データ/アプリケーション/B94B1310-4A63-4F91-AE7B-5F625697B3E2/ライブラリ/iMagDocument.sqlite、メタデータ = { NSPersistenceFrameworkVersion = 519; NSStoreModelVersionHashes = {

そして、それは行き来します...これが私がすることです: データモデルの型を整数64から文字列に変更します:

わかりました、私は何を間違っていますか? 明らかに欠けているものがあるはずなので、属性タイプを変更するたびにアプリがクラッシュします。

4

2 に答える 2

0

これは正しい方法です:

- (NSDictionary *)persistentStoreOptions {
    return @{NSInferMappingModelAutomaticallyOption: @YES,
             NSMigratePersistentStoresAutomaticallyOption: @YES,
             NSSQLitePragmasOption: @{@"synchronous": @"OFF"}};
}
于 2015-06-11T12:53:20.573 に答える