0

モデルの新しいバージョンを作成し、それを現在のモデルとして設定しました。2つの新しいエンティティを追加しました。そのうちの1つは親エンティティに依存しています。

ストアをセットアップするときに次のコードを追加しました

 NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:  
                         [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,  
                         [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];  

そして、マッピングモデルを作成しました。古いモデルをソースにし、新しいモデルを宛先にします。ただし、アプリケーションは起動時にクラッシュします。ここで何かが足りないと思います。私はアップルのドキュメントを調べてみましたが、それでも何が得られません。

4

1 に答える 1

0

コアデータ構造を改訂して更新する場合は、古いデータ構造を新しいデータ構造で更新する必要があります。古いものはすでに存在し、他のファイルは再作成されないため、コードに新しいエンティティが含まれていても、ユーザーのデバイスにインストールされているアプリケーションには古いデータ構造が含まれており、新しいデータ構造でそれらのエンティティのクエリを実行すると、アプリはそれを見つけることができません。したがって、最終的にはクラッシュします。

それ以外の場合は、テスト目的のみのアプリケーションを削除できます。アプリの新しいバージョンを作成している場合は、このリンクを参照してください

于 2012-05-28T07:13:16.250 に答える