django 的 migrations 文件重置管理


使用 django 開發項目時,如果你使用 model 模型管理你的數據庫表,對 migrations 文件會很熟悉,每次 model 模型有新的變更都會執行 python manage.py makemigrations 這個命令, 生成一些操作數據表的 migrations 腳本文件,但是隨着項目的迭代,數據表肯定改動越來越多,你的 migrations 文件也會越來越多.

如果你直接刪除這些文件,下次執行 makemigrations 命令時就會報錯,因為多個 migrations 文件是有關聯的。

 

但是 django 提供了管理 migrations 文件的解決辦法,

1.通過執行 

python manage.py migrate –fake <app名稱> zero

即可重置對應 app 下面 migrations 文件,即自動清除該 app 下面 migrations 文件執行記錄

2.刪除對應 app 下面的 migrations 文件

3.執行 

python manage.py makemigrations

重新生成 migrations 文件

4.然后執行

 python manage.py migrate <app> –fake 

重新在數據庫中 migrations 表記錄 migrate 執行記錄,但並不會執行 migrations 文件中的代碼。

這樣就做到了,既不對現有的數據庫改動,而又可以重置 migraion 文件,媽媽再也不用在 migration 文件夾中看到一推文件了。

 

注:

python manage.py migrate –fake-inital

這個命令是對所有 app 操作


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM