58
58

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【学習メモ】MakemigrationsとMigrateについて

Posted at

#概要
モデルをデータベースに反映するためにmigrateを実行しますが、makemigrationsがあるのを知ったので、少しまとめてみます。

#MakemigrationsとMigrateの違い

  • migrateはモデルをデータベースに反映させる
  • makemigrationsはマイグレーションファイルを作成する

つまりmigrateをすることで、データベース構成を変更したり、その変更を取り消したりすることが出来るが、データベース構成のバージョン管理をするのに、makemigrationsでマイグレーションファイルを作成する。

  • 公式からは下記のように記載されています。

マイグレーション (Migrations) は、Django でモデルに対して行った変更 (フィールドの追加やモデルの削除など) をデータベーススキーマに反映させる方法です。

マイグレーションというのは、データベーススキーマに対するバージョン管理システムのようなものです。makemigrations はモデルの変更点を1つのマイグレーションファイルにパッケージングし(コミットのようなものです)、migrate はその変更点をデータベースに適用する、というわけです。
引用:https://docs.djangoproject.com/ja/2.2/topics/migrations/

  • 図にすると、わかりやすいですね。

makemigrations_migrate.png

#コマンド
実行方法はシンプルで、下記のようになります。

makemigrations

terminal
$ python manage.py makemigrations

migrate

terminal
$ python manage.py migrate

以上

58
58
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
58
58

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?