天天看點

我的第一個python web開發架構(9)——目錄與配置說明

  和老大聊完後,小白回家接收到相關工具函數包後,就按要求開始幹活,首先要做的是熟悉配置參數和了解工具函數有哪些實用的工具。

  由于這個項目比較簡單,是以不用建立那麼多分類,隻需要api、common、config、log和test五個目錄就可以了

  打開PyCharm,在前面的Hello World項目裡分别建立好上面的目錄(如下圖),然後将相關檔案拷貝到相應檔案夾裡

  

我的第一個python web開發架構(9)——目錄與配置說明

  config檔案夾裡是const.py檔案,這是一個存儲常量的配置檔案,在開發的過程中,可以将各種常量配置統一放到這裡來,友善管理。

#!/usr/bin/evn python
# coding=utf-8

### 裝置常量參數子產品,初始化各個常量 ###
##################################################################################
### 資料庫參數 ###
# 資料庫名稱
DB_NAME = 'simple_db'
# 資料庫連結位址
DB_HOST = '127.0.0.1'
# 資料庫端口
DB_PORT = 5432
# 資料庫賬号
DB_USER = 'postgres'
# 資料庫登入密碼
DB_PASS = '123456'

##################################################################################
### 郵件服務參數 ###
# 郵件伺服器
SMTP = 'smtp.qq.com'
# 郵件伺服器端口
PORT = 465
# email發送賬号
EMAIL_USER = '[email protected]'
# email發送密碼
EMAIL_PWD = 'xxxxxxxxxxx'
# 系統異常郵件通知位址,多個位址用逗号分隔
EMAIL_LIST = '[email protected]'
# 異常郵件通知标題
# ——由于我們有開發環境、測試環境、預生産環境、生産環境等多個不同的環境,
# ——是以在發送異常通知時如果區分的話,可能就弄不清是那個環境出了問題,
# ——我們可以通過設定郵件标題為:開發、測試、預生産、生産等标簽來友善區分是那個環境發送的異常通知
EMAIL_ERR_TITLE = '系統異常通知-simple-開發'      

  PS:這裡配置的是資料庫連結參數和郵件服務參數,郵件服務主要用來自動發送代碼運作過程中出現的各種異常,讓開發人員能及時收到異常回報。将裡面的參數改為你自己的郵件服務就可以了,如果用的是QQ郵箱,發送密碼不是你的QQ登入密碼,而是QQ郵箱裡的授權碼,可以登入QQ郵箱後按下面路徑擷取:設定=》帳戶=》POP3/SMTP服務=》然後開啟POP3/SMTP服務,點選生成授權碼就可以了

  在檔案夾中可以看到__init__.py檔案,這是python包的初始化檔案,下面代碼可以幫我們自動導入該檔案夾下的python程式檔案,如果有多層檔案夾時,隻要每個檔案夾裡有都有這個檔案,它就會将所有子檔案夾裡的程式檔案導入進來給我們調用(api檔案夾裡的__init__.py檔案代碼會與這個不一樣,裡面增加了導入出錯自動發送異常通知郵件的功能,讓開發人員及時了解python項目初始化時出現異常,友善及時對異常進行修改)

#!/usr/bin/evn python
# coding=utf-8

#周遊目前檔案夾下的所有.py檔案,然後用__import__導入到程式中
import os,sys
pro_path = os.path.split(os.path.realpath(__file__))[0]
sys.path.append(pro_path)
for root,dirs,files in os.walk(pro_path):
    for file in files:
        name,ext = os.path.splitext(file)
        if ext == '.py' and name != '__init__' and pro_path == root:
            __import__(name)

    for dir in dirs:
        if dir != '.svn':
            try:
                __import__(__name__ + '.' + dir)
            except:
                pass
    break      

  本文對應的源碼下載下傳

版權聲明:本文原創發表于 部落格園,作者為 AllEmpty 本文歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則視為侵權。

python開發QQ群:669058475(本群已滿)、733466321(可以加2群)    作者部落格:http://www.cnblogs.com/EmptyFS/