【轉】Python3使用Django2.x的settings文件詳解

 

# -*- coding:utf8 -*-
import os

# 項目路徑
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

# 安全密鑰,默認隨機加密字符串
SECRET_KEY = '36x5$p=6d2(pce!8tyjhciw4_j%r&85ql=h3(pst_2z4cqj)vf'

# 調試模式,項目上線即變動爲 Flase 關閉 DEBUG 模式
DEBUG = True

# 項目上線須要填寫,自行調試無需填寫。能夠使用 '*' 通配符
ALLOWED_HOSTS = []


# 應用定義
INSTALLED_APPS = [                              # 安裝過的 APP 列表,換句話說須要加載的應用列表,有些是系統內置的
    'django.contrib.admin',                     # 後臺管理系統
    'django.contrib.auth',                      # 用戶認證系統
    'django.contrib.contenttypes',              # 記錄 model 內容類型(Django的ORM框架)
    'django.contrib.sessions',                  # sessions會話訪問功能,標識用戶身份記錄相關用戶信息
    'django.contrib.messages',                  # 消息提示功能
    'django.contrib.staticfiles',               # 查找靜態資源路徑(須要手動指定),與尾部【STATICFILES_DIRS】對應
    'APP',                                      # 手動建立增長的 APP 名稱
]

# 中間件(處理Django的request和response對象的鉤子,Django接受到用戶請求通過中間件處理請求,並執行相關處理反饋給用戶),中間件的加載順序不能錯!!!
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',                # 內置的安全機制,保護用戶與網站的通訊安全
    'django.contrib.sessions.middleware.SessionMiddleware',         # 會話session功能
    'django.middlewart.locale.LocaleMiddleware',                    # 支持中文語言
    'django.middleware.common.CommonMiddleware',                    # 處理請求信息,規範化請求內容
    'django.middleware.csrf.CsrfViewMiddleware',                    # 開啓 CSRF(跨站請求僞造) 防禦功能
    'django.contrib.auth.middleware.AuthenticationMiddleware',      # 內置的用戶認證系統
    'django.contrib.messages.middleware.MessageMiddleware',         # 內置的信息提示功能
    'django.middleware.clickjacking.XFrameOptionsMiddleware',       # 防止惡意程序點擊劫持
]

# 根目錄配置
ROOT_URLCONF = 'DjangoBlog.urls'

# 模版信息配置
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',       # 定義模版引擎
        # 內置模版引擎有 Django Templates 和 jinja2.Jinja2
        'DIRS': [os.path.join(BASE_DIR, 'APP/templates/')],                 # 指定模版靜態文件的物理路徑
        'APP_DIRS': True,                                                   # 是否在APP裏查找模版
        'OPTIONS': {                                                        # 用戶填充在 RequestContext 上下文的調用函數選項,通常不須要修改
            '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 模塊
WSGI_APPLICATION = 'DjangoBlog.wsgi.application'


# Database
# https://docs.djangoproject.com/en/2.1/ref/settings/#databases

# 數據庫鏈接配置設置
DATABASES = {
    'default': {                                            # 默認數據庫
        'ENGINE': 'django.db.backends.sqlite3',             # 鏈接sqlite3數據庫引擎
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),       # 鏈接數據庫名稱和路徑
            },
    'MyMQL': {                                              # 鏈接mysql數據庫名稱
        'ENGINE': 'django.db.backends.mysql',               # 鏈接mysql數據庫引擎
        'NAME': '數據庫名稱',
        'USER': '數據庫用戶名',
        'PASSWORD': '數據庫密碼',
        'HOST': '主機地址',
        'POST': '3306',
    }
}


# Password validation
# https://docs.djangoproject.com/en/2.1/ref/settings/#auth-password-validators

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',
    },
]


# Internationalization
# https://docs.djangoproject.com/en/2.1/topics/i18n/

#LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'zh-hans'           # 語言設置爲中文
TIME_ZONE = 'UTC'                   # 時區設置
USE_I18N = True
USE_L10N = True
USE_TZ = True


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.1/howto/static-files/

STATIC_URL = '/static/'
# URL靜態訪問名,如:http://127.0.0.1:/static/index.html。
# 默認APP下的static目錄
# 能夠使用 STATICFILES_DIRS參數指定路徑

STATICFILES_DIRS = (os.path.join(BASE_DIR,"APP/templates"),)
# 靜態文件指定的路徑,能夠有多個,元組或列表均可
# 與【INSTALLED_APPS】加載項 【django.contrib.staticfiles】 對應

STATIC_ROOT = 'APP/html'            # 配合 python manage.py collectstatic 命令使用,指定存放全部項目的靜態文件目錄,通常用於項目上線使用

 

轉自:https://my.oschina.net/zhaojunhui/blog/2992058html

 

謝謝python

相關文章
相關標籤/搜索