hachinoBlog

hachinobuのエンジニアライフ

CoreDataのモデルファイル(.xcdatamodeld)の名前を変更する方法

モデルファイルを変更したくてハマった。
まず、before.sqlite → after.sqlite にリネーム。
次に、before.xcdatamodeld → after.xcdatamodeld にリネームしてビルドするとCoreDataに接続する処理で
'NSInvalidArgumentException', reason: 'Cannot create an NSPersistentStoreCoordinator with a nil model'
というエラーが出た。

解決方法は
コンソールでafter.xcdatamodeldファイルのフォルダまで移動。
after.xcdatamodeldはフォルダになっているので中に入る。
after.xcdatamodeldフォルダ配下に隠しファイルである.xccurrentversionがある。
.xccurrentversionをviコマンドで開くと
before.xcdatamodeld
という箇所があるのでここを
after.xcdatamodeld
に変更してあげればOK

MacのFinderで隠しファイルを表示する方法が分からなかったのでコンソールでやりました。
Finderから隠しファイルって表示できるのかなー。。