我想在python中編寫一個腳本來編輯我的django應用程序settigs.py文件。除了將文件作爲文本文件讀取以外,還有其他方式可以編輯設置文件中的變量值並保存它嗎?從外部來源更改django的設置
1
A
回答
3
除了將文件作爲文本文件讀取以外,還有其他方法可以編輯設置文件中的變量值並保存嗎?
有沒有必要解析&重寫settings.py等。只需添加如下語句:
import json
overrides = json.loads(open('settings.json').read())
globals().update(overrides)
settings.json
則包含這樣的設置:
{
"MY_SETTING" : "FOO"
}
我在這裏使用以.json文件爲例。只要overrides
是一本字典,你可以使用任何返回字典的源(例如,yml,你自己的格式,或者甚至是Python的類__dict__
)。
結果,settings
從django.conf
進口將包含,如果它是在settings.py
直接指定新設置:
$ python manage.py shell
In [1]: print settings.MY_SETTING
FOO
0
你想要的東西像django-appconf。
相關問題
- 1. TFS和從外部更改的資源?
- 2. 如何從外部來源更新uitextview。
- 3. 從外部源設置道具
- 4. Mercurial:推送文件從外部來源更改
- 5. 無法更改表來設置外鍵
- 6. 從外部源設置內部UITableViewCell的內容?
- 7. 的MainWindow.Background設置外部資源
- 8. 動態地更改來自外部源的彈出內容
- 9. Django的用戶和來自外部來源的認證
- 10. Nuxt外部來源
- 11. 從外部更改變量
- 12. 如何設置從外部
- 13. 從外設更改CBAdvertisementDataManufacturerDataKey
- 14. 在外部來源設計會話重置發佈URL
- 15. 從外部來源執行Python腳本
- 16. 從外部來源調用json文件
- 17. PhoneGap:從外部來源加載數據
- 18. 從外部來源禁止WAMP 403
- 19. onPreCreate與所有者從外部來源
- 20. 從外部來源加載html
- 21. 如何從外部來源使用paperscript?
- 22. 從外部來源播放歌曲嗎?
- 23. 更改Django的默認模型設置
- 24. 如何從外部來源更新數據庫
- 25. 從外部來源閱讀電影或更新資產
- 26. 意外更改設置中的wp url
- 27. 設置權限來隱藏外部JavaScript
- 28. 項目外的Django設置
- 29. 設置Django應用服務器從外部可到達
- 30. 更改NSImage來源
感謝您回覆@miraculixx。我的問題不是很清楚。我有4個django應用程序,所有四個應用程序的設置文件非常相似,但數據庫名稱,密碼,主機等是不同的。我不想直接編輯每個settings.py文件。相反,我創建了一個包含所有設置變量的json文件,當我需要更改應用程序的settings.py文件時,我想運行python腳本並讀取json文件中的值,並且如果json文件中有任何更改valuesthen我想更改設置文件 – sara
中的值,但上述解決方案將完成所有這些工作,但是,您不需要更改settings.py。它會在django加載時自動執行。請注意,通常這種方式是將數據庫名稱,密碼,主機存儲在環境變量中,並使用'os.environ.get('YOUR_VARIABLE')'。 – miraculixx
我希望在編寫我自己的解決方案之前知道這一點!問題:這會監視外部文件,即如果外部文件更改,重新啓動服務器? –