bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

Django怎么設置多環境配置文件載入-創新互聯

這篇文章主要介紹了Django怎么設置多環境配置文件載入,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

網站設計制作、做網站,成都做網站公司-創新互聯已向近千家企業提供了,網站設計,網站制作,網絡營銷等服務!設計與技術結合,多年網站推廣經驗,合理的價格為您打造企業品質網站。

起步

通常,針對不同的開發環境,需要不同的配置保證程序可運行且不干擾。單個 settings.py 文件就很難滿足需求,需要將他拆分為多個文件,根據特定環境載入不同的配置文件。一種簡單的劃分就是分為 4 個文件:

__init__.py
base.py
dev.py
prod.py

基本結構

一個初始的 Django 項目目錄結構如下:

mysite/
 |-- mysite/
 | |-- __init__.py
 | |-- settings.py
 | |-- urls.py
 | +-- wsgi.py
 +-- manage.py

這時候要做的就是創建一個名為 settings 的文件夾,將 settings.py 重命名為 base.py 并放入文件夾內:

mysite/
 |-- mysite/
 | |-- __init__.py
 | |-- settings/  <-- 新建的文件夾
 | | |-- __init__.py <--
 | | |-- base.py <-- 舊的 settings.py
 | | |-- cli.py <-- 根據不同環境而新增的配置文件
 | | |-- dev.py
 | | +-- prod.py
 | |-- urls.py
 | +-- wsgi.py
 +-- manage.py

base.py 顧名思義,它將成為所有環境的通用配置,擴展的配置文件需要將 base.py 導入:

# settings/dev.py
from .base import *

DEBUG = True

INSTALLED_APPS += [
 'debug_toolbar',
]
...

讓配置文件生效

要使配置文件生效,需要讓 Django 知道我們要使用哪個配置文件,一種方式就是在命令行中傳遞這個 --settings=mysite.settings.dev 參數,如:

python manage.py runserver --settings=mysite.settings.dev
python manage.py runserver --settings=mysite.settings.prod
python manage.py migrate --settings=mysite.settings.prod

如果不希望每次指令都傳遞 --settings 參數,也可以通過修改 manage.py 文件實現使用不同的配置文件:

# manage.py
import os
import sys
if __name__ == "__main__":
 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings.dev") # 修改這個位置
 ...

在服務器上指定設置

生產環境下一般不會使用 runserver 指令運行,大多是通過 uwsgi 方式運行,修改 mysite/wsgi.py :

import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings.prod")
application = get_wsgi_application()

通過修改 DJANGO_SETTINGS_MODULE 環境變量指向所需的配置文件。

下面看下django settings多環境配置

通常我們會把本地、線上的配置拆分,django不同環境的配置可如下:

1.在settings.py同級目錄添加settings文件夾

2.把settings.py移到settings文件夾內,并重命名為base.py

3.添加dev.py, prod.py到settings文件夾

Django怎么設置多環境配置文件載入

4.base.py中的根目錄,要改成:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(os.path.join(__file__, os.pardir))))

說明:

1)一些公共配置,放在base.py中。其他因環境而不同的配置,加到local.py/prod.py中

2)dev.py/prod.py,需要把base.py中的配置導入

from .base import *
DEBUG = True
#其他配置

3)啟動服務時,用--setings指定配置

python manage.py runserver --settings=back-server.settings.dev

正式環境用uwsgi部署,則配置環境變量:DJANGO_SETTINGS_MODULE=back-server.settings.prod

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Django怎么設置多環境配置文件載入”這篇文章對大家有幫助,同時也希望大家多多支持創新互聯,關注創新互聯行業資訊頻道,更多相關知識等著你來學習!

網站名稱:Django怎么設置多環境配置文件載入-創新互聯
文章源于:http://vcdvsql.cn/article36/isesg.html

成都網站建設公司_創新互聯,為您提供網站設計公司App設計網站內鏈Google面包屑導航外貿建站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站優化排名