... ションというのは、データベーススキーマに対するバージョン管理システムのようなものです。 makemigrations はモデルの変更点を1つのマイグレーションファイルにパッケージングし(コミットのようなものです)、 migrate はその変更点をデータベースに適用する、というわけです。 各アプリのマイ ... ィレクトリの中に保管され、コードベースの一部としてコミットされ、配布されるようにデザインされています。いったん開発用マシンでマイグレーションファイルが作成されれば、その後、チームメンバーのマシンやステージング環境のマシン上で同一のマイグレーションが行われ、最終的にプロダク ... books/migrations/0003_auto.py: ~ Alter field author on book すると、あなたが書いたモデルがスキャンされ、現在のバージョンのマイグレーションファイルに記録されているモデルと比較されます。この時、 makemigrations があなたが何を変更したと考えているのかを理解するために、出力を ... ... ションというのは、データベーススキーマに対するバージョン管理システムのようなものです。 makemigrations はモデルの変更点を1つのマイグレーションファイルにパッケージングし(コミットのようなものです)、 migrate はその変更点をデータベースに適用する、というわけです。 各アプリのマイ ... ィレクトリの中に保管され、コードベースの一部としてコミットされ、配布されるようにデザインされています。いったん開発用マシンでマイグレーションファイルが作成されれば、その後、チームメンバーのマシンやステージング環境のマシン上で同一のマイグレーションが行われ、最終的にプロダク ... books/migrations/0003_auto.py: ~ Alter field author on book すると、あなたが書いたモデルがスキャンされ、現在のバージョンのマイグレーションファイルに記録されているモデルと比較されます。この時、 makemigrations があなたが何を変更したと考えているのかを理解するために、出力を ... ... 、作成される予定のマイグレーションを表示します。このオプションを --verbosity 3 オプションと併用することで、書き込まれる予定のマイグレーションファイルの内容そのものを表示できます。 --merge ¶ マイグレーションで発生するコンフリクトの修復を有効にする --name NAME , -n NAME ¶ 生 ... とができます。名前は有効な Python 識別子 でなければなりません。 --no-header ¶ Django のバージョンとタイムスタンプヘッダなしでマイグレーションファイルを生成します。 --check ¶ マイグレーションを伴わないモデル変更が検出された場合に、 makemigrations を 0 以外のステータスで終了 ... するようにします。これは --dry-run を意味します。 --scriptable ¶ ログ出力と入力プロンプトを stderr に流し、生成されたマイグレーションファイルのパスのみを stdout に書き込みます。 --update ¶ モデルの変更を最新のマイグレーションにマージし、その結果生じるオペレーション ... ... 、作成される予定のマイグレーションを表示します。このオプションを --verbosity 3 オプションと併用することで、書き込まれる予定のマイグレーションファイルの内容そのものを表示できます。 --merge ¶ マイグレーションで発生するコンフリクトの修復を有効にする --name NAME , -n NAME ¶ 生 ... とができます。名前は有効な Python 識別子 でなければなりません。 --no-header ¶ Django のバージョンとタイムスタンプヘッダなしでマイグレーションファイルを生成します。 --check ¶ マイグレーションを伴わないモデル変更が検出された場合に、 makemigrations を 0 以外のステータスで終了 ... するようにします。これは --dry-run を意味します。 --scriptable ¶ ログ出力と入力プロンプトを stderr に流し、生成されたマイグレーションファイルのパスのみを stdout に書き込みます。 --update ¶ モデルの変更を最新のマイグレーションにマージし、その結果生じるオペレーション ... ... ddField 操作を含むマイグレーションが生成されます。 同じアプリに対して makemigrations myapp --empty を2回実行して、2つの空のマイグレーションファイルを生成します。以下の例では、マイグレーションファイルにわかりやすい名前を付けるためにファイル名を変更しています。 自動生成され ... ください。これは、一時的にNULLフィールドを作成し、すべての行に一意な値を設定するまで、一意制約の作成を延期します。 最初の空のマイグレーションファイルに、 RunPython または RunSQL オペレーションを追加して、既存の各行に対して一意な値 (この例では UUID) を生成します。 uuid のイ ... ... ddField 操作を含むマイグレーションが生成されます。 同じアプリに対して makemigrations myapp --empty を2回実行して、2つの空のマイグレーションファイルを生成します。以下の例では、マイグレーションファイルにわかりやすい名前を付けるためにファイル名を変更しています。 自動生成され ... ください。これは、一時的にNULLフィールドを作成し、すべての行に一意な値を設定するまで、一意制約の作成を延期します。 最初の空のマイグレーションファイルに、 RunPython または RunSQL オペレーションを追加して、既存の各行に対して一意な値 (この例では UUID) を生成します。 uuid のイ ... ... 自の変更をカプセル化したければ独自に オペレーション を記述する事もできます。 もし独自の Operation オブジェクトを定義する空のマイグレーションファイルが必要であれば、 python manage.py makemigrations --empty yourappname を実行してください。ただし、手動でのスキーマ変更オペレー ... スのセットを変更します ( Meta サブクラスの index_together オプション)。 警告 AlterIndexTogether は公式には Django 4.2 以前のマイグレーションファイルにのみサポートされています。後方互換性の理由から、これはまだパブリック API の一部であり、非推奨または削除する予定はありません ... い。 オプションの elidable 引数はこの処理を マイグレーションのスカッシュ を行った際に消去する(省略する)か否かを決定します。 マイグレーションファイルの Migration クラスから独立した別の関数として記述し、 RunPython に渡すことを推奨します。以下に RunPython を用いて Country モ ... ... 自の変更をカプセル化したければ独自に オペレーション を記述する事もできます。 もし独自の Operation オブジェクトを定義する空のマイグレーションファイルが必要であれば、 python manage.py makemigrations --empty yourappname を実行してください。ただし、手動でのスキーマ変更オペレー ... スのセットを変更します ( Meta サブクラスの index_together オプション)。 警告 AlterIndexTogether は公式には Django 4.2 以前のマイグレーションファイルにのみサポートされています。後方互換性の理由から、これはまだパブリック API の一部であり、非推奨または削除する予定はありません ... い。 オプションの elidable 引数はこの処理を マイグレーションのスカッシュ を行った際に消去する(省略する)か否かを決定します。 マイグレーションファイルの Migration クラスから独立した別の関数として記述し、 RunPython に渡すことを推奨します。以下に RunPython を用いて Country モ ... ... できます。 マイグレーションを使って拡張機能を作成する ¶ マイグレーションファイルを使用して、データベースにPostgreSQL拡張を作成できます。この例ではhstore拡張を作成しますが、他の拡張にも同じ原則が適用されま ... ているが PostgreSQL では提供されていない特定の照合順序を使用してカラムをフィルタリングしたり並べ替えたりする必要がある場合、マイグレーションファイルを使ってデータベース内の照合順序を管理できます。これらの照合順序は、 CharField , TextField やそのサブクラスの db_collation パ ... ... クラス化 非同期のクラスベース・ビュー マイグレーション コマンド 対応するバックエンド ワークフロー トランザクション 依存関係 マイグレーションファイル アプリにマイグレーションを追加する マイグレーションを元に戻す 履歴上のモデル モデルのフィールドを削除するときに考えるべきこ ... 2026年10月08日