djangosettings.py配置文件importosBASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))#引入os,os
django settings.py 配置文件
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
#引入os,os包可以对文件进行操作管理
SECRET_KEY = '^#kms19!iawj2b&v3egmynpfwj8^v@2f(_1+jlw+#^vy^pg7oy'
#随机生成的密钥
DEBUG = True
#代表是调试环境
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',
]
#当前项目应用,只有加入这里才能进行模型同步等操作,注册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应用程序对象的完整Python路径
DATABASES = {
"default": {
"ENGINE": "django.db.backends.mysql",
"NAME": "practice", # 需要自己手动创建数据库
"USER": "root",
"PASSWORD": "318",
"HOST": "127.0.0.1",
"POST": 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',
},
]
#启用密码验证
LANGUAGE_CODE = 'en-us'
#语言 如中文: LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'UTC'
#时区 如中国上海时区: TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
#国际化
USE_L10N = True
"""
如果USE_L10N设置为True,则区域设置指定的格式具有更高的优先级
admin 的时候想显示格式化时间,必须把 USE_L10N = False
"""
USE_TZ = True
#系统时区
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/'
#静态文件配置 如:
"""
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 #数量限制
"""
ps:下面给大家介绍下Django中的settings.py
Django的settings文件包含Django应用的所有配置项。由于Django的官方文档部分支持中文,所以极大的增强了我们对文档的阅读性,也可以直接访问官方文档文档settings.py链接进行对settings.py的了解。
settings中有十分庞大的设置选项,在此先介绍默认写在settings.py
中的选项,然后列出一些常用的选项。
BASE_DIR:即为项目所在目录,__file__可以获得当前文件的路径,BASE_DIR的存在使我们项目的可移植性更强。
SECRET_KEY:一个特殊的Django安装的密钥,每当使用Django-admin startproject
时会自动生成一个。
DUBUG:默认值为FALSE,当选择TRUE时,当我们的项目出错时可以使我们看到出错信息,但是为了防止被用户看到或者他人攻击,在项目上线后应改为FALSE。
ALLOWED_HOSTS:默认值是一个空列表,列表中的值为哪些域名可以访问我们的Django项目
INSTALLED_APPS:安装的APP列表,Django为我们默认添加了一些自带的项目,图片中Users是我自己创建的项目。我们自己创建的APP都要加入这个列表才可以被使用。
MIDDLEWARE:这是我们要使用的中间件的列表。
ROOT_URLCONF:表示根URLconf的完整Python导入路径的字符串。
TEMPLATES:这是对我们的template的选项,template用于存放我们的html文件。详细的选项可以参照DjangoTemplates官方文档。
WSGI_APPLICATION:配置Django项目的WSGI服务路径。
DATABASES:这个大家应该就很熟悉了,配置Django的数据库设置,Django默认的是sqlite3数据库,在这里我把它设置为mysql数据库。ENGINE是选择对应我们选择的数据库的引擎,NAME是数据库名称,HOST是连接数据库所要用到的主机,还有PORT选择端口等许多选项,也可以参考DATABASES文档。
AUTH_PASSWORD_VALIDATORS:用于检查用户密码强度的验证器列表,在为空的情况下就接受任意强度的用户密码。
LANGUAGE_CODE:Django项目的语言代码,默认值为en-us也就是英语,这里我选择的是zh-hans也就是我们的汉语。选择之后Django的admin界面就将变为汉语。
TIME_ZONE:时区,默认值是UTC。当USE_TZ为TRUE时,无论TZ设置为何值Django都会使用系统默认的时区,例如要使用上海的时区则需将USE_TZ=FALSE,TIME_ZONE='Asia/Shanghai'。
USE_I18N:国际化,Django允许开发者指定要翻译的字符串,也可以让访问者进行语言选择。
USE_L10N:是否选择启用数据的本地化。
USE_TZ:TimeZone,如果开启了Time Zone功能,则所有的存储和内部处理,甚至包括直接print
显示全都是UTC的。只有通过模板进行表单输入/渲染输出的时候,才会执行UTC本地时间的转换。
通过settings.py默认的选项进行设置就可以启动一个Django项目了,接下来是一些常用的选项。
STATIC_URL:静态目录的所有文件,存放css,js等文件。
STATICFILES_DIRS:将我们自己的static文件加入static路径。
MEDIA_URL:与STATIC_URL类似,存放用户上传的文件。
总结
以上所述是小编给大家介绍的django settings.py 配置文件及介绍,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
django settings.py django 配置文件