您好,登錄后才能下訂單哦!
這篇文章主要介紹django中settings.py配置文件的示例分析,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
django settings.py 配置文件
import os BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #引入os,os包可以對文件進(jìn)行操作管理 SECRET_KEY = '^#kms19!iawj2b&v3egmynpfwj8^v@2f(_1+jlw+#^vy^pg7oy' #隨機生成的密鑰 DEBUG = True #代表是調(diào)試環(huán)境 ALLOWED_HOSTS = [] #允許的主機路徑,不填寫或者ALLOWED_HOSTS = [“*”]代表允許任意主機域名,如果要指定,在里面輸入, #比如域名只允許為 www.baidu.com 那么 ALLOWED_HOSTS = [“www.baidu.com”] INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ] #當(dāng)前項目應(yīng)用,只有加入這里才能進(jìn)行模型同步等操作,注冊app等 MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] #django的中間件,自己寫的中間件要在這里填寫路徑注冊,才會生效 ROOT_URLCONF = 'untitled.urls' #主路由,也就是項目的主urls(根urls) TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')] , 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] #模版的處理,包括路徑,處理的包等 WSGI_APPLICATION = 'untitled.wsgi.application' #啟動定義,將使用的WSGI應(yīng)用程序?qū)ο蟮耐暾鸓ython路徑 DATABASES = { "default": { "ENGINE": "django.db.backends.mysql", "NAME": "practice", # 需要自己手動創(chuàng)建數(shù)據(jù)庫 "USER": "root", "PASSWORD": "318", "HOST": "127.0.0.1", "POST": 3306 } } #數(shù)據(jù)庫相關(guān)配置 AUTH_PASSWORD_VALIDATORS = [ { 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', }, { 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', }, { 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', }, { 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', }, ] #啟用密碼驗證 LANGUAGE_CODE = 'en-us' #語言 如中文: LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'UTC' #時區(qū) 如中國上海時區(qū): TIME_ZONE = 'Asia/Shanghai' USE_I18N = True #國際化 USE_L10N = True """ 如果USE_L10N設(shè)置為True,則區(qū)域設(shè)置指定的格式具有更高的優(yōu)先級 admin 的時候想顯示格式化時間,必須把 USE_L10N = False """ USE_TZ = True #系統(tǒng)時區(qū) LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBUG', 'class':'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'propagate': True, 'level':'DEBUG', }, } } #Django利用python提供的logging模塊,記錄日志。 STATIC_URL = '/static/' #靜態(tài)文件配置 如: """ STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ] """ #自己定義時間顯示格式 如: """ DATE_FORMAT = 'Y-m-d' DATETIME_FORMAT = 'Y-m-d H:i:s' """ #定義視圖需要的一些限制 如: """ MAX_CUSTOMER_NUM = 3 #數(shù)量限制 """
ps:下面給大家介紹下Django中的settings.py
Django的settings文件包含Django應(yīng)用的所有配置項。由于Django的官方文檔部分支持中文,所以極大的增強了我們對文檔的閱讀性,也可以直接訪問官方文檔文檔settings.py鏈接進(jìn)行對settings.py的了解。
settings中有十分龐大的設(shè)置選項,在此先介紹默認(rèn)寫在settings.py
中的選項,然后列出一些常用的選項。
BASE_DIR:即為項目所在目錄,__file__可以獲得當(dāng)前文件的路徑,BASE_DIR的存在使我們項目的可移植性更強。
SECRET_KEY:一個特殊的Django安裝的密鑰,每當(dāng)使用Django-admin startproject
時會自動生成一個。
DUBUG:默認(rèn)值為FALSE,當(dāng)選擇TRUE時,當(dāng)我們的項目出錯時可以使我們看到出錯信息,但是為了防止被用戶看到或者他人攻擊,在項目上線后應(yīng)改為FALSE。
ALLOWED_HOSTS:默認(rèn)值是一個空列表,列表中的值為哪些域名可以訪問我們的Django項目
INSTALLED_APPS:安裝的APP列表,Django為我們默認(rèn)添加了一些自帶的項目,圖片中Users是我自己創(chuàng)建的項目。我們自己創(chuàng)建的APP都要加入這個列表才可以被使用。
MIDDLEWARE:這是我們要使用的中間件的列表。
ROOT_URLCONF:表示根URLconf的完整Python導(dǎo)入路徑的字符串。
TEMPLATES:這是對我們的template的選項,template用于存放我們的html文件。詳細(xì)的選項可以參照DjangoTemplates官方文檔。
WSGI_APPLICATION:配置Django項目的WSGI服務(wù)路徑。
DATABASES:這個大家應(yīng)該就很熟悉了,配置Django的數(shù)據(jù)庫設(shè)置,Django默認(rèn)的是sqlite3數(shù)據(jù)庫,在這里我把它設(shè)置為mysql數(shù)據(jù)庫。ENGINE是選擇對應(yīng)我們選擇的數(shù)據(jù)庫的引擎,NAME是數(shù)據(jù)庫名稱,HOST是連接數(shù)據(jù)庫所要用到的主機,還有PORT選擇端口等許多選項,也可以參考DATABASES文檔。
AUTH_PASSWORD_VALIDATORS:用于檢查用戶密碼強度的驗證器列表,在為空的情況下就接受任意強度的用戶密碼。
LANGUAGE_CODE:Django項目的語言代碼,默認(rèn)值為en-us也就是英語,這里我選擇的是zh-hans也就是我們的漢語。選擇之后Django的admin界面就將變?yōu)闈h語。
TIME_ZONE:時區(qū),默認(rèn)值是UTC。當(dāng)USE_TZ為TRUE時,無論TZ設(shè)置為何值Django都會使用系統(tǒng)默認(rèn)的時區(qū),例如要使用上海的時區(qū)則需將USE_TZ=FALSE,TIME_ZONE='Asia/Shanghai'。
USE_I18N:國際化,Django允許開發(fā)者指定要翻譯的字符串,也可以讓訪問者進(jìn)行語言選擇。
USE_L10N:是否選擇啟用數(shù)據(jù)的本地化。
USE_TZ:TimeZone,如果開啟了Time Zone功能,則所有的存儲和內(nèi)部處理,甚至包括直接print
顯示全都是UTC的。只有通過模板進(jìn)行表單輸入/渲染輸出的時候,才會執(zhí)行UTC本地時間的轉(zhuǎn)換。
通過settings.py默認(rèn)的選項進(jìn)行設(shè)置就可以啟動一個Django項目了,接下來是一些常用的選項。
STATIC_URL:靜態(tài)目錄的所有文件,存放css,js等文件。
STATICFILES_DIRS:將我們自己的static文件加入static路徑。
MEDIA_URL:與STATIC_URL類似,存放用戶上傳的文件。
以上是“django中settings.py配置文件的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。