通常,一個Web App在運行時都需要讀取配置文件,比如數據庫的用戶名、口令等,在不同的環境中運行時,Web App可以通過讀取不同的配置文件來獲得正確的配置。
由于Python本身語法簡單,完全可以直接用Python源代碼來實現配置,而不需要再解析一個單獨的.properties或者.yaml等配置文件。
默認的配置文件應該完全符合本地開發環境,這樣,無需任何設置,就可以立刻啟動服務器。
我們把默認的配置文件命名為config_default.py:
# config_default.py configs = { 'db': { 'host': '127.0.0.1', 'port': 3306, 'user': 'www-data', 'password': 'www-data', 'database': 'awesome' }, 'session': { 'secret': 'AwEsOmE' } }
上述配置文件簡單明了。但是,如果要部署到服務器時,通常需要修改數據庫的host等信息,直接修改config_default.py不是一個好辦法,更好的方法是編寫一個config_override.py,用來覆蓋某些默認設置:
# config_override.py configs = { 'db': { 'host': '192.168.0.100' } }
把config_default.py作為開發環境的標準配置,把config_override.py作為生產環境的標準配置,我們就可以既方便地在本地開發,又可以隨時把應用部署到服務器上。
應用程序讀取配置文件需要優先從config_override.py讀取。為了簡化讀取配置文件,可以把所有配置讀取到統一的config.py中:
# config.py configs = config_default.configs try: import config_override configs = merge(configs, config_override.configs) except ImportError: pass
這樣,我們就完成了App的配置。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com