關於Django中的遷移文件


django開發中,如果說之前的遷移文件不小心刪掉了或者換設備了(總之就是不好去找回之前的遷移文件了),此時想要在在數據庫中加一些表,那么就需要做以下幾步處理了:

1.首先就是在應用模型類中添加模型類(這是必須也是簡單的,略)

2.由於之前遷移過,在數據庫中會有一張表(名為:django_migrations),有這么一條記錄,記錄着遷移的文件名和應用名稱還有時間。再次生成遷移文件,執行遷移時,會提示  No migrations to apply(沒有遷移申請),此時有兩種解決方案

  ①.修改0001_initial.py名。強迫症表示不能接受

  ②.將django_migrations表中刪除這條數據

 

3.刪除后手動將0001_initial.py遷移文件中不需要遷移的模型類對應數據刪除,否則將不能執行遷移

 

 

   刪除后即可進行遷移。

   遷移還有一種情況,就是你把models中的定義的某些模型類刪除了,遷移時會提示是否刪除數據庫中的該模型類對應的表,按需輸入yes或no即可,我這里還需要這個表,所以輸入no回車:

 

 

再說說涉及到model更改的情況,創建遷移文件時可能會收到 No changes detected(未檢測到更改) 的提示,此時需要創建一個空的遷移文件,再生成遷移文件

python manage.py makemigrations --empty ‘應用名'

# 執行完上面再生成遷移文件
python manage.py makemigrations


免責聲明!

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



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