測試專案配置
阿新 • • 發佈:2020-12-13
一、pip安裝源
1、常見安裝源
""" -- 豆瓣:https://pypi.douban.com/simple -- 阿里:https://mirrors.aliyun.com/pypi/simple 安裝的命令: -- >: pip install -i https://pypi.douban.com/simple 模組名 """
2、永久配置安裝源
""" 1、檔案管理器檔案路徑位址列敲:%APPDATA% 回車,快速進入 C:\Users\電腦使用者\AppData\Roaming 資料夾中 2、新建 pip 資料夾並在資料夾中新建 pip.ini 配置檔案 3、新增 pip.ini 配置檔案內容""" #配置檔案內容 """ [global] index-url = http://pypi.douban.com/simple [install] use-mirrors =true mirrors =http://pypi.douban.com/simple/ trusted-host =pypi.douban.com """
3、匯出專案依賴庫
pip freeze >requirment.txt #requirment.txt是自己定義的檔名
4、根據文字匯入依賴庫
pip install -r requirment.txt -i 豆瓣源
二、虛擬環境
1、虛擬環境安裝
pip3 install virtualenv pip3 install virtualenvwrapper-win
2、配置虛擬環境工作目錄
# 配置環境變數: # 在系統變數中新增 變數名:WORKON_HOME 變數值:自定義存放虛擬環境的絕對路徑 如: WORKON_HOME: D:\Virtualenvs # 同步配置資訊: # 去向Python3的安裝目錄 => Scripts資料夾 => virtualenvwrapper.bat => 雙擊
3、常見終端使用命令
# 選取預設Python環境建立虛擬環境: -- mkvirtualenv 虛擬環境名稱
# 基於某Python環境建立虛擬環境: -- mkvirtualenv -p python2.7 虛擬環境名稱-- mkvirtualenv -p python3.6 虛擬環境名稱 # 2、檢視已有的虛擬環境 -- workon # 3、使用某個虛擬環境 -- workon 虛擬環境名稱 # 4、進入|退出 該虛擬環境的Python環境 -- python | exit() # 5、為虛擬環境安裝模組 -- pip或pip3 install 模組名 # 6、退出當前虛擬環境 -- deactivate # 7、刪除虛擬環境(刪除當前虛擬環境要先退出) -- rmvirtualenv 虛擬環境名稱
三、後臺配置
1、重構專案
""" ├── luffyapi ├── logs/ # 專案執行時/開發時日誌目錄 - 包 ├── manage.py # 指令碼檔案 ├── luffyapi/ # 專案主應用,開發時的程式碼儲存 - 包 ├── apps/ # 開發者的程式碼儲存目錄,以模組[子應用]為目錄儲存 - 包 ├── libs/ # 第三方類庫的儲存目錄[第三方元件、模組] - 包 ├── settings/ # 配置目錄 - 包 ├── dev.py # 專案開發時的本地配置 └── prod.py # 專案上線時的執行配置 ├── urls.py # 總路由 └── utils/ # 多個模組[子應用]的公共函式類庫[自己開發的元件] └── scripts/ # 儲存專案運營時的指令碼檔案 - 資料夾 """
2、重構後開發環境配置
""" 1.修改 wsgi.py 與 manage.py 兩個檔案: # manage.py os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.dev') # wsgi.py os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.prod') # manage_prod.py os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.prod') 2.將settings.py刪除或改名,內容拷貝到settings/dev.py中 3.修改dev.py檔案內容 LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' USE_TZ = False 4.修改啟動配置:見插圖 5.在任何一個__init__.py檔案中測試預設配置檔案是否是dev.py檔案 from django.conf import settings print(settings) """
3、重構後新增app應用的配置
#dev.py檔案
import sys sys.path.insert(0, BASE_DIR) APPS_DIR = os.path.join(BASE_DIR, 'apps') sys.path.insert(1, APPS_DIR)
四、資料庫配置
1、配置許可權
''' 建立使用者::create user ‘使用者名稱’@‘訪問主機’ identified by ‘密碼’; 授予許可權:grant 許可權列表 on 資料庫 to ‘使用者名稱’@‘訪問主機’ ; with grant option這個選項表示該使用者可以將自己擁有的許可權授權給別人 ''' #建立使用者 create user 'luffy'@'localhost' identified by 'luffy'; #授予許可權,任意ip可以連線資料庫 grant all privileges on luffy.* to 'luffy'@'%' with grant option; #本地連線 grant all privileges on luffy.* to 'luffy'@'localhost' with grant option; #重新整理 flush privileges;
2、配置檔案配置:dev.py
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'luffy', 'USER': 'luffy', 'PASSWORD': 'luffy', 'HOST': 'localhost', 'PORT': 3306 } } import pymysql pymysql.install_as_MySQLdb()
五、Django 2.x 一些版本pymysql相容問題
六、日誌配置
1、配置檔案dev.py
LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'formatters': { 'verbose': { 'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s' }, 'simple': { 'format': '%(levelname)s %(module)s %(lineno)d %(message)s' }, }, 'filters': { 'require_debug_true': { '()': 'django.utils.log.RequireDebugTrue', }, }, 'handlers': { 'console': { # 實際開發建議使用WARNING 'level': 'DEBUG', 'filters': ['require_debug_true'], 'class': 'logging.StreamHandler', 'formatter': 'simple' }, 'file': { # 實際開發建議使用ERROR 'level': 'INFO', 'class': 'logging.handlers.RotatingFileHandler', # 日誌位置,日誌檔名,日誌儲存目錄必須手動建立,注:這裡的檔案路徑要注意BASE_DIR代表的是小luffyapi 'filename': os.path.join(os.path.dirname(BASE_DIR), "logs", "luffy.log"), # 日誌檔案的最大值,這裡我們設定300M 'maxBytes': 300 * 1024 * 1024, # 日誌檔案的數量,設定最大日誌數量為10 'backupCount': 10, # 日誌格式:詳細格式 'formatter': 'verbose', # 檔案內容編碼 'encoding': 'utf-8' }, }, # 日誌物件 'loggers': { 'django': { 'handlers': ['console', 'file'], 'propagate': True, # 是否讓日誌資訊繼續冒泡給其他的日誌處理系統 }, } }
2、重寫logging.py檔案
import logging logger = logging.getLogger('django') #django是日誌物件中的名字