「NSInferMappingModelAutomaticallyOption」を「NO」に設定すると、「移行用のマッピング モデルが見つかりません」というメッセージが表示され続けました。「NSInferMappingModelAutomaticallyOption」を「YES」に設定すると、軽量移行は問題なくパスします。
私が従った手順は次のとおりです。
- 新しいモデル バージョン .xcdatamodelId を追加します
- エンティティに変更を加える (新しいエンティティの追加を含む)
- 新しいバージョンのデータモデルを現在のバージョンとして選択し、新しい NSManagedObject サブクラスを生成して、コードに対応する変更を加えます。
- マッピング モデルを作成し、ソース ポイントを古いデータモデル バージョンに、宛先ポイントを新しいデータモデル バージョンにします。
- カスタム移行ポリシーを作成し、マッピング モデル内のマッピングの 1 つに接続します
- 「NSInferMappingModelAutomaticallyOption」を「NO」に設定して軽量移行を設定します。
- 古いビルドからのデータベースを使用して、シミュレーターで移行をテストします。
Apple ドキュメントで説明したすべての手順に従い、マッピングを作成した後、エンティティ スキーマを変更しませんでした。xcode で DerivedData フォルダーをクリーンアップしようとしましたが、正しいファイルを含む「VersionInfo.plist」も確認しました私のデータモデルのバージョン。変更されていないエンティティのハッシュキーは一致しています。
しかし、移行を行おうとすると、まだこのエラーが発生します.... 今はかなりイライラしています.. 誰でもこの問題についてのガイドを教えてもらえますか?