【Django】マイグレーションコマンド一覧

基本操作

マイグレーションファイルを作成

python manage.py makemigrations

マイグレーションファイルをデータベースに適用
・マイグレーションIDが未指定だった場合全てのマイグレーションを適用
・指定したマイグレーションIDが未適用のものだった場合、そのIDまでデータベースに適用
・指定したマイグレーションIDが適用済のものだった場合、そのIDまでの適用をデータベースから取り消す

python manage.py migrate (マイグレーションID)

マイグレーションの一覧を表示(アプリ・名前順)

python manage.py showmigrations


マイグレーションの適用計画順(後述)に表示

pythonmanage.py showmigrations --plan


対象のマイグレーションID適用時のSQLを表示

pythonmanage.py sqlmigrate マイグレーションID


特殊操作

複数世代のマイグレーションをマージする
単純に一つのファイルにまとめる。適用後は元ファイルの削除を勧告される

manage.py squashmigrations From To


一つのマイグレーションファイルから複数のマイグレーションファイルが分岐してしまった状態を修復するこのコマンド。基本的にマイグレーションファイルは直列関係になっていなくてはならないが、チームでの開発だと容易に並列箇所が生まれる。分岐した複数のマイグレーションファイル全てをdependenciesに持つ、空のマイグレーションファイルを作成し、分岐した流れを統合する。

manage.py makemigrations --merge


空のマイグレーションファイルを作成する。operationsに処理を追加して使う。

manage.py makemigrations --empty


マイグレーションファイルの内容は実施せず、django_migrationsテーブルへの追記のみ実行する
使い道は後述

manage.py migrate --fake

この記事は役に立ちましたか?

もし参考になりましたら、下記のボタンで教えてください。

関連記事

コメント

この記事へのコメントはありません。