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

weixin_33686714發表於2017-10-20

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

  由於這個專案比較簡單,所以不用建立那麼多分類,只需要api、common、config、log和test五個目錄就可以了

  開啟PyCharm,在前面的Hello World專案裡分別建立好上面的目錄(如下圖),然後將相關檔案拷貝到相應資料夾裡

  

  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 = 'xxxxxx@qq.com'
# email傳送密碼
EMAIL_PWD = 'xxxxxxxxxxx'
# 系統異常郵件通知地址,多個地址用逗號分隔
EMAIL_LIST = 'xxxxxx@qq.com'
# 異常郵件通知標題
# ——由於我們有開發環境、測試環境、預生產環境、生產環境等多個不同的環境,
# ——所以在傳送異常通知時如果區分的話,可能就弄不清是那個環境出了問題,
# ——我們可以通過設定郵件標題為:開發、測試、預生產、生產等標籤來方便區分是那個環境傳送的異常通知
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/

相關文章