1. 把所有 migrations 砍掉,重做一個 migrations(python manage.py makemigratioms),這樣會只有 0001_initial.py。
<這裡把過去 migrations 都砍掉之後,重做的 migrations,其實就是之前新增後經過刪減的最終 models >
2. 舊 db 的 django_migrations 表,找到自己 app,超過 0001 的 record 都砍掉。
<這裡會紀錄過去 migrations,但現在已經刪除重做 migrations 了,所以這裡也必須同步。SQL 語法可以參考第二張圖。>
如此一來做 migrate 時,可以達到較不容易出錯 (因為只剩下一份檔案 0001_initial.py,不需依附前面一個檔案)又同時保留其他舊資料的效果。
砍掉 record 前:
執行 SQL: 圖的 main 是範例中「自己 app」,因此執行 SQL 時要改成自己 app 的名稱
砍掉 record 後:
