2015-09-03 25 views
4

我正在編寫一個django模型遷移,它將刪除數據庫中的所有現有對象(模型)。
在實際遷移之前是否可以提醒用戶? 我想提醒用戶在實際遷移之前備份數據。Django - 在執行遷移之前警告用戶

我可以從用戶那裏拿一個raw_input(),然後繼續,如果他真的想要嗎?

如何在執行過程中取消遷移?

回答

3

您可以在RunPython操作中執行任何操作,包括要求用戶輸入並引發異常以取消遷移。

在所有操作成功之前,遷移不會被標記爲已應用。只需確保RunPython操作請求確認在同一遷移文件中的任何其他操作之前運行。如果您不這樣做,並且用戶取消遷移,則可能會使數據庫處於與部分應用的遷移不一致的狀態。

+0

完美,謝謝你的回答:) – Hrishi