django中settings.py配置文件中的各项组件功能
# django项目启动之前,先执行这个配置文件(先加载配置文件)
# 如果配置文件出错了,整个项目启动不起来
import os
# 项目根路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# 秘钥 :django中涉及到加密的通常都是用这个密码:session加密
SECRET_KEY = '1tpet_$)1$ovd88i0i^3wx7c-sc6hll@+p&4t*v&cu0!mxt0w-'
# 项目是调试模式:1,报错直接显示在网页上 2,可以热加载(热更新)
DEBUG = True
# 后期项目上线,需要配置,服务器的地址
ALLOWED_HOSTS = []
# 注册app的地址
INSTALLED_APPS = [
'django.contrib.admin', # 后台管理
'django.contrib.auth', # 认证 auth组件 用户表
'django.contrib.contenttypes', # 每创建一个表,它都会有记录(不用)
'django.contrib.sessions', # session的使用 只是生成了许多表
'django.contrib.messages', # 消息框架 闪现 在不同的请求之间传递数据
'django.contrib.staticfiles', # 静态文件
'app01.apps.App01Config', # 自己写的app
]
# 中间件
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware', # 认证相关中间件
'django.contrib.sessions.middleware.SessionMiddleware', # session的
'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 = 'drf02.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',
],
},
},
]
# 后期项目上线,使用uwsgi运行,指定的运行的app
WSGI_APPLICATION = 'drf02.wsgi.application'
# 数据库的配置 可以使用多数据库
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# 认证的校验
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 = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False
# 静态文件
STATIC_URL = '/static/'
## 咱们看到的是用户配置
## 默认还有统一的内置配置