2016-03-08 93 views
2

我一直在Django的一個合同項目上工作,並且爲活動服務器執行了一些更新,包括從南到最新的Django版本的更新。Django - 遷移混合起來?

我試圖按照說明中的說明刪除所有舊的遷移文件,除了init,然後使用makemigrations和「python manage.py migrate --fake-initial」。

但事實證明,數據庫權限是棘手的。我無法應用更新。

服務器所有者(誰是過去的承包商)還沒有意識到存在權限問題,並嘗試自行更新。

服務器正在工作,但他向我表示他「必須對遷移工作做許多更改,因爲沒有舊的遷移」。

我假設他不知道從南方升級到與Django進行集成遷移的正確方法,並且手動完成了所有操作,而不是讓Django遷移執行工作

現在我準備好了將來的更新,但我查看了migrations文件夾,它看起來像舊的遷移文件以及新的遷移文件都在那裏?例如:http://screencast.com/t/gYQdc1tl4(注意日期)。

一切似乎都在工作,但我想知道...我應該如何去從這裏的未來遷移?定期makemigrations/migrate工作嗎?或者我應該再次做 - 起初的?

有什麼建議嗎?由於我們偏離了文檔,我不確定下一步該怎麼做。

感謝

+0

我的回答有幫助嗎?如果願意,請接受。 – ilse2005

回答

2

如果一切正常,現在你不需要遷移您的開發服務器,那麼我只想刪除所有舊的遷移(做一個備份!),並以「新移民」使用--fake-initial

啓動
+0

工作很好,謝謝!另外一個問題是...當我從開發服務器部署到實時服務器時。如果我遷移了開發服務器,然後通過遷移的數據庫與文件一起復制,是否會有任何問題?或者,如果我在實時服務器上運行遷移,它只能正常工作?唯一的問題是確保數據庫是最新的? –