使用遷移

Django 使用遷移將你對模型所做的更改傳播到資料庫。大多數時候 django 可以為你生成它們。

要建立遷移,請執行:

$ django-admin makemigrations <app_name>

這將在 app_namemigration 子模組中建立一個遷移檔案。第一次遷移將命名為 0001_initial.py,另一次將以 0002_ 開始,然後是 0003,…

如果省略 <app_name>,這將為你的所有 INSTALLED_APPS 建立遷移。

要將遷移傳播到資料庫,請執行:

$ django-admin migrate <app_name>

要顯示所有遷移,請執行:

$ django-admin showmigrations app_name
app_name
  [X] 0001_initial
  [X] 0002_auto_20160115_1027
  [X] 0003_somemodel
  [ ] 0004_auto_20160323_1826
  • [X] 表示遷移已傳播到你的資料庫
  • [ ] 表示遷移未傳播到你的資料庫。使用 django-admin migrate 傳播它

你也可以呼叫還原遷移,這可以通過將遷移名稱傳遞給 migrate command 來完成。鑑於以上遷移列表(由 django-admin showmigrations 顯示):

$ django-admin migrate app_name 0002  # Roll back to migration 0002
$ django-admin showmigrations app_name
app_name
  [X] 0001_initial
  [X] 0002_auto_20160115_1027
  [ ] 0003_somemodel
  [ ] 0004_auto_20160323_1826