我的django項目有兩個環境 - 開發和測試。今天我在開發中不小心覆蓋了測試中的settings.py。我花了一段時間來糾正測試中的設置,如果我有一種很好的方法分別維護兩套設置,本來可以避免的。維護不同環境的獨立設置的方法?
我想保留settings.py的兩個單獨副本,並在需要時重命名/移動它們。然而,這是一個穴居人的方法。有沒有更聰明的方法來處理這個問題?
我的django項目有兩個環境 - 開發和測試。今天我在開發中不小心覆蓋了測試中的settings.py。我花了一段時間來糾正測試中的設置,如果我有一種很好的方法分別維護兩套設置,本來可以避免的。維護不同環境的獨立設置的方法?
我想保留settings.py的兩個單獨副本,並在需要時重命名/移動它們。然而,這是一個穴居人的方法。有沒有更聰明的方法來處理這個問題?
在你的settings.py文件的末尾,補充一點:
try:
from settings_dev import *
except ImportError: pass
凡settings_dev.py將包含開發設置。並且在您的製作環境中,請勿推送settings_dev(只需在.gitingore或源代碼版本控制系統中忽略它)。
因此,如果存在settings_dev.py,settings.py將被settings_dev覆蓋。 py文件。
還有一個方法,通過設置環境變量:
if os.environ.get('DEVELOPMENT', None):
from settings_dev import *
這裏提到我更喜歡第一個,這很簡單,只是工作。
還沒有決定哪一個去,但我認爲這兩個都很好。謝謝。 – tamakisquare 2012-01-05 06:15:02
可能重複[?如何管理當地VS Django的生產設置](http://stackoverflow.com/questions/1626326/how-to - 管理本地與生產設置在Django) – ravi404 2015-08-10 10:28:52