Django完整配置settings.py
“”"
Django settings for DjangoFresh project.
Generated by ‘django-admin startproject’ using Django 2.1.2.
For more information on this file, see
https://docs.djangoproject.com/en/2.1/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/2.1/ref/settings/
“”"
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)))
Quick-start development settings - unsuitable for production
See https://docs.djangoproject.com/en/2.1/howto/deployment/checklist/
SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = ‘#*g#)k=c6jjy$cb)2tc&7sz^w)=vj92-=1j80%=69ezgkrlu’
SECURITY WARNING: don’t run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ["*"]#讓所有ip訪問
Application definition
INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘Store’,
‘Buyer’,
‘ckeditor’,#富文本配置,django自帶
‘ckeditor_uploader’,
‘rest_framework’,
‘djcelery’,#django-celery;celery定時任務
]
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’,
#‘DjangoFresh.middleware.MiddlewareTest’,#middleware中間件
]
ROOT_URLCONF = ‘DjangoFresh.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’,
],
},
},
]
WSGI_APPLICATION = ‘DjangoFresh.wsgi.application’
Database
https://docs.djangoproject.com/en/2.1/ref/settings/#databases
DATABASES = {#數據庫配置
‘default’: {
‘ENGINE’: ‘django.db.backends.sqlite3’,
‘NAME’: os.path.join(BASE_DIR, ‘db.sqlite3’),
}
}
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 = ‘zh-hans’#簡體字
TIME_ZONE = ‘Asia/Shanghai’#指定時區
USE_I18N = True
USE_L10N = True
USE_TZ = False#為True默認使用utc 0時區
Static files (CSS, JavaScript, Images)
https://docs.djangoproject.com/en/2.1/howto/static-files/
STATIC_URL = ‘/static/’
STATICFILES_DIRS=(
os.path.join(BASE_DIR,“static”),
)
MEDIA_URL="/media/"#長傳文件
MEDIA_ROOT=os.path.join(BASE_DIR,“static”)
STATIC_ROOT=os.path.join(BASE_DIR,“static”)#收集靜態文件
CKEDITOR_UPLOAD_PATH=‘static/upload’
CKEDITOR_IMAGE_BACKEND=“pillow”#富文本配置
#配置完富文本后要收集靜態文件,然后在前端引用,然后運行
REST_FRAMEWORK={
“DEFAULT_PERMISSION_CLASSES”:[
‘rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly’
],
‘DEFAULT_PAGINATION_CLASS’:‘rest_framework.pagination.PageNumberPagination’,
‘PAGE_SIZE’:10,#分頁需要,用于后端分頁
“DEFAULT_RENDERER_CLASSES”?
‘utils.rendererresponse.customrenderer’,
),
‘DEFAULT_FILTER_BACKENDS’?
‘django_filters.rest_framework.DjangoFilterBackend’,#django-filter自帶查詢過濾器
}
#配置郵件服務器
EMAIL_BACKEND=‘django.core.mail.backends.smtp.EmailBackend’#發送郵件采用smtp服務
EMAIL_USE_TLS=False#使用tls方式
EMAIL_HOST=“smtp.163.com”
EMAIL_POST=465
EMAIL_HOST_USER="18232951692@qq.com"
EMAIL_HOST_PASSWORD=“123aoe”
DEFAUIL_FROM_EMAIL="3303236612@qq.com"
#celery#配置
import djcelery#導入django-celery模塊
djcelery.setup_loader()#進行模塊加載
BROKER_URL=“redis://127.0.0.1:6379/1”#任務容器地址,redis數據庫地址
CELERY_IMPORTS=(‘CeleryTask.tasks’)#具體的任務文件
CELERY_TIMEZONE=‘Asia/Shanghai’#celery時區
CELERYBEAT_SCHEDULER=‘djcelery.schedulers.DatabaseScheduler’#celey處理器,固定
#celery的定時器
#schedules時間表 安排schedules schdeules時間表 安排;celery定時任務用到的包celery celery
from celery.schedules import timedelta#timedelta時間間隔timedelta timedelta時間間隔timedelta
CELERYBEAT_SCHEDULE={#定時器策略
#定時任務一:每隔30s運行一次
u’測試定時器1’:{
“task”:“CeleryTask.tasks.taskExample”,
#"schedule"crontab(minute=’*/2’),#or ‘schedule’: timedelta(seconds=3)
“schedule”:timedelta(seconds=3),#3秒運行一次
“args”?),
},
u’來自天主的問候’:{
“task”:“CeleryTask.tasks.DingTalk”,#文件位置
“schedule”:timedelta(seconds=3),#定時器,每3秒運行一次
“args”?),
},
}
#緩存配置
CACHES={
‘default’:{
‘BACKEND’:‘django.core.cache.backends.memcached.MemcachedCache’,
#申明使用memcache進行緩存
‘LOCATION’:[
‘127.0.0.1:11211’#緩存默認端口
]#memcache地址
}
}
CACHES={
‘default’:{
‘BACKEND’:‘django.core.cache.backends.locmem.LocMemCache’
#默認使用本地緩存
}
}
CACHES={
‘default’:{
‘BACKEND’:‘django_redis.cache.RedisCache’,
‘LOCATION’:[
‘redis://127.0.0.1:6379/1’
],#memcacha地址
‘OPTIONS’:{
‘CLIENT_CLASS’:‘django_redis.client.DefaultClient’
}
}
}
CACHE_MIDDLEWARE_KEY_PREFIX=’’
CACHE_MIDDLEWARE_SECONDS=600#全局緩存的壽命
#數據庫緩存
CACHES={
‘default’:{
‘BACKEND’:‘django.core.cache.backends.db.DatabaseCache’,
#默認使用數據庫緩存
‘LOCATION’:‘cache_table’#存放緩存的表
}
}
總結
以上是生活随笔為你收集整理的Django完整配置settings.py的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django缓存
- 下一篇: flask框架数据库增删改查