libro
www.tuyano.com
初心者のためのDjango 2.0入門

データベースを使おう! (5/5)

作成:2017-12-30 08:50
更新:2017-12-30 08:50

■マイグレーションについて

では、モデルができたら、「マイグレーション」を行いましょう。マイグレーションというのは、データベースの変更などを適用するための処理です。

ある時点でマイグレーションを行なっておき、それ以後、また新たにモデルを追加するなどデータベース関係の変更を行ったら、マイグレーションを実行することで、前回のマイグレーション以降の変更点をすべて現在に適用し、最新の状態にすることができます。

マイグレーションを行うためには、変更に関する情報を記述したマイグレーションファイルを作成する必要があります。今回は、helloアプリケーションにPersonというモデルを追加しました。この変更情報を記したマイグレーションファイルを作成しましょう。

コマンドプロンプトまたはターミナルでプロジェクトフォルダに移動し、以下のように実行して下さい。
python manage.py makemigrations hello

このコマンドを実行すると、以下のように出力されます。
Migrations for 'hello':
  hello\migrations\0001_initial.py
    - Create model Person

これで、マイグレーションファイルが生成されます。「hello」フォルダの中に、新たに「magrations」というフォルダが作成され、その中に0001_initial.pyというファイルが生成されています。これがマイグレーションファイルです。

マイグレーションファイルの生成は、以下のような形でコマンドを実行します。
python manage.py makemigrations アプリ名

アプリ名を指定して実行すると、そのアプリの変更状態をチェックし、変更された差分の情報をマイグレーションファイルとして生成します。


■マイグレーションを実行する

では、マイグレーションを実行しましょう。コマンドプロンプトまたはターミナルから、以下のように実行して下さい。
python manage.py migrate

これで、マイグレーションファイルの内容を読み込み、データベースの更新が行われます。実行してみると、helloのマイグレーションだけでなく、adminauthといったものまで更新処理がされているのがわかるでしょう。

これらは、Djangoのプロジェクトに最初から用意されているアプリです。初めてマイグレーションを行う際には、これらデフォルトで用意されているアプリ関係のマイグレーションも同時に行われます。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。


※関連コンテンツ

「初心者のためのDjango 2.0入門」に戻る