django setting.py配置文件解读-02
定义项目目录常量
import os # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
随机秘钥
# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = '=XXXXXXXXXXXXXXXXXX'
是否开启调试模式
一般开发环境debug设置为开启 生成环境设置成关闭
# SECURITY WARNING: don't run with debug turned on in production! DEBUG = True
允许投放的域名或主机
为空则默认为本地127.0.0.1 或者 localhost 进行验证
ALLOWED_HOSTS = []
应用程序的定义
# Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 添加上 blog 这个 app 'blog', ]
中间件
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', ]
配置路由指向地址
ROOT_URLCONF = 'demo.urls'
模板引擎配置
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], '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', ], }, }, ]
BACKEND django内置的实现模板引擎API的类
DIRS 定义了一个目录列表,其中引擎应该在搜索顺序中寻找模板源文件 'DIRS': [BASE_DIR+"/templates",], # 修改位置
APP_DIRS 表示引擎是否应该在已安装的应用程序中寻找模板。每个后端都为其模板应该存储的应用程序中的子目录定义了一个常规名称
OPTIONS 包含特定后台设置
WSGI的配置文件路径
WSGI_APPLICATION = 'demo.wsgi.application'
django的内置服务器(如runserver)将使用的WSGI应用程序对象的完整Python路径。django-admin startproject management命令将创建一个简单的wsgi。py文件,其中有一个可调用的应用程序,并将这个设置指向该应用程序。
如果没有设置,则将使用django.core.wsgi.get wsgiapplication()的返回值。在这种情况下,runserver的行为将与以前的Django版本相同。
数据库配置
DATABASES = { # 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), # } 'default': { 'ENGINE': 'django.db.backends.mysql', # 或者使用 mysql.connector.django 'NAME': 'bigdata', 'USER': 'root', 'PASSWORD': '', 'HOST': 'localhost', 'PORT': '3306', } }
相关验证
用于检查用户密码强度的验证器列表。有关更多细节,请参阅密码验证。默认情况下,不执行验证,所有密码都被接受。
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.0/topics/i18n/ LANGUAGE_CODE = 'en-us' TIME_ZONE = 'UTC' USE_I18N = True USE_L10N = True USE_TZ = True
设置静态文件存放目录
# https://docs.djangoproject.com/en/2.0/howto/static-files/ STATIC_URL = '/static/'