我想清除我的數據庫中的表格,所以我放棄了表格。通常我會做manage.py syncdb
重新創建它。但是,答案here表示不再使用syncdb
。那麼,我該怎麼做呢?如何用django-south恢復丟棄的表?
回答
嗯this exchange佔地面積我很質疑:
如果你手動修改數據庫,南都不會注意到 - 的 跟蹤的是哪個版本的數據庫是 south_migrationhistory表的唯一途徑,所以如果你背後搗鼓它,你的責任是修理它的 。
我最終什麼事做了評論指出,我有問題下降,做一個schemamigration
模型,創建一個我放棄了(所以南有東西砸),migrate
ING的空沒有列的表格,然後取消註釋該模型,schemamigration
和migrate
再次。有點煩人,不僅僅是丟下桌子,而且還好啊。
有相同的問題。不知道這部作品在任何情況下,但這裏是我所做的:
- 評論了「南方」從INSTALLED_APPS
- 運行manage.py執行syncdb
- 取消註釋「南下」在INSTALLED_APPS
- 運行管理。 py migrate
Voila!
您的里程可能會有所不同....
您在執行此操作時也需要重命名migrations文件夾,我只是以下劃線作爲前綴。在步驟1和2之間執行此操作,然後在步驟4之前重命名爲'遷移' – 2015-02-26 15:26:21
這是一個相當晚迴應,但對於誰都會碰到同樣的問題(像我一樣)的人。
通常下降由南管理應用程式的db_tables你應該使用:
python manage.py migrate appname zero
但是,如果你在DB手動降到他們讓南知道它
python manage.py migrate appname zero --fake
而且當然要重新創建表格
python manage.py migrate appname
對於'migrate appname zero'! – 2012-12-18 10:33:35
只有當你丟掉_every_表 – 2013-01-16 21:51:37
+1時,這纔有效幫助我在我的開發服務器上工作。謝謝! – tatlar 2013-05-30 16:14:32
確保已應用所有遷移: python manage.py migrate
告訴Django創建表,因爲他們是在你的模型:python manage.py syncdb
告訴南一切是它應該是:python manage.py migrate appname --fake
這假設沒有在的任何改變你的自創建上次遷移以來,型號爲。
我知道這個問題已經過時,但我只是遇到了這個問題,並認爲我會發布我的解決方案,以防萬一這有助於任何人。
- 進入您的
models.py
數據庫所在的文件夾。 - 將整個班級從
models.py
文件中刪除。 - 運行./manage.py schemamigration
appname
--auto(這將創建另一個遷移,其中South
將識別刪除此表)。您可能需要在數據庫中重新創建一張空白表格,以便South
可以看到它。 - 運行
migration
,表應該從數據庫中刪除。 - 將表格類重新粘貼回
models.py
文件中的位置。 - 運行./manage.py架構遷移
appname
--auto。南應該拿起桌子,並允許你遷移 - 運行./manage.py遷移
appname
和南應重新添加到您的數據庫表...與列等等,但沒有數據,明顯。 :)
哈哈很好,這正是我的答案所說的,但一步一步的佈局。 – Claudiu 2013-11-23 05:40:57
噢,真好!對不起,我沒有看到你回答。很高興我們都至少達到了同樣的決議。 :) – jaredgilmore 2013-11-25 18:16:59
- 1. jquery恢復丟棄後的圖像
- 2. XCODE SCM恢復丟棄的文件
- 3. 在R中恢復丟失/丟棄的會話?
- 4. 恢復意外丟棄的未提交文件
- 5. MySQL丟棄表
- 6. 如何恢復藍牙包丟失? Android
- 7. 恢復丟失的WiredTiger.wt
- 8. 如何計算可丟棄區域中的丟棄項目jquery
- 9. 如何丟棄記錄?
- 10. 如何丟棄在Xcode
- 11. SSL丟失密碼恢復
- 12. 如果圖像已被丟棄,禁用圖像丟棄?
- 13. 如何恢復丟失的Facebook應用程序
- 14. 如何恢復MYSQL表
- 15. 如何恢復表單?
- 16. 臨時表不會丟棄
- 17. #temp表沒有被丟棄
- 18. Laravel恢復丟失不起作用
- 19. 如何在mysql中丟棄重複記錄的插入?
- 20. 如何取回丟棄的提交
- 21. 如何防止IIS7丟棄我的Cookie?
- 22. 如何在丟棄事件jquery上獲取丟棄項目的ID
- 23. Git - 恢復丟失的提交
- 24. 恢復丟失的C#網頁
- 25. 在CMS中恢復丟失的記錄
- 26. SocketIO +節點 - 恢復丟失的連接
- 27. 在SOAPUI中恢復丟失的腳本
- 28. ,如何恢復?
- 29. 如何爲cv :: SVMParams修復丟棄限定符[-fpermissive]?
- 30. 丟棄裝飾
是否有可能在mysql中創建無列表? – 2013-10-17 09:45:00