settings.py文件配置
1、settings.py介绍
- settings.py 包含了Django项目启动的所有配置项
- 配置项分为公有配置和自定义配置
- 配置项格式:BASE_DIR = ‘xxxxxxxx’
- 公有配置Django官方提供的基础配置
https://docs.djangoproject.com/en/3.2/ref/settings/
2、BASE_DIR
settings.py文件中的变量BASE_DIR,如下:
BASE_DIR =Path(__file__).resolve().parent.parent
__file__代表的是settings.py文件;
Path(file).resolve()的结果是settings.py文件的绝对路径;
Path(file).resolve().parent.parent是取其父目录的父目录,也就是django-admin创建项目之后的路径
3、DEBUG
默认值是DEBUG = True
- DEBUG = True,修改了Django项目的代码,然后按下ctrl+s,那么Django就会自动的给我们重启项目,不需要手动重启
- DEBUG = True,Django项目中的代码出现bug了,那么在浏览器中和控制台会打印出错信息
- 在生产环境中,禁止开启DEBUG = True,因为当你的网站出错误时,别人能看到你的源代码。所以需要关掉DEBUG = True,即设置DEBUG = False
如果设置了DEBUG = False,那么就必须设置settings.py中的ALLOWED_HOSTS.
ALLOWED_HOSTS:设置以后只能通过这个变量中的ip地址或者域名来进行访问。
4、ALLOWED_HOSTS
- 设置允许访问到本项目的host值
- []空列表,表示只有请求头中host为127.0.0.1,localhost能访问本项目,DEBUG = True时有效
- [‘*’]表示任何请求头的host都能访问到当前项目
- [‘192.168.56.100’, ‘127.0.0.1’]表示只有当前两个host的值可以访问当前项目
ALLOWED_HOSTS = ['192.168.56.100', '127.0.0.1']
5、其他配置
INSTALLED_APPS # 指定当前项目中安装的应用列表
MIDDLEWARE # 用于注册中间件
TEMPLATES # 用于指定模板的配置信息
DATABASES # 用于指定数据库的配置信息
LANGUAGE_CODE = 'zh-Hans' # 用于指定语言配置 英文:"en-us" 中文:“zh-Hans”
TIME_ZONE = 'UTC' # 用于指定当前服务器端时区 世界标准时间:"UTC" 中国时区:"Asia/Shanghai"
ROOT_URLCONF = 'automateproject.urls' # 用于配置主url配置“automateproject.urls”
6、settings.py中的配置项在代码的引入方式
from django.conf import settings