在Python的web架構中配置app的教程

來源:互聯網
上載者:User
有了Web架構和ORM架構,我們就可以開始裝配App了。

通常,一個Web App在運行時都需要讀取設定檔,比如資料庫的使用者名稱、口令等,在不同的環境中運行時,Web App可以通過讀取不同的設定檔來獲得正確的配置。

由於Python本身文法簡單,完全可以直接用Python原始碼來實現配置,而不需要再解析一個單獨的.properties或者.yaml等設定檔。

預設的設定檔應該完全符合本地開發環境,這樣,無需任何設定,就可以立刻啟動伺服器。

我們把預設的設定檔命名為config_default.py:

# config_default.pyconfigs = {  '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.pyconfigs = {  'db': {    'host': '192.168.0.100'  }}

把config_default.py作為開發環境的標準配置,把config_override.py作為生產環境的標準配置,我們就可以既方便地在本地開發,又可以隨時把應用部署到伺服器上。

應用程式讀取設定檔需要優先從config_override.py讀取。為了簡化讀取設定檔,可以把所有配置讀取到統一的config.py中:

# config.pyconfigs = config_default.configstry:  import config_override  configs = merge(configs, config_override.configs)except ImportError:  pass

這樣,我們就完成了App的配置。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.