jerryxjr1220 发表于 2020-5-17 17:20:28

【原创教程】建站实录系列之Django3+Xadmin2+CKeditor打造个人博客(4)

3. 配置settings.py(续)
接上一篇教程:【原创教程】建站实录系列之Django3+Xadmin2+CKeditor打造个人博客(3),成品效果可访问:http://www.bestech.ren
ROOT_URLCONF = 'MyBlog.urls'
url配置文件,在urls.py中可以使用include函数对子url进一步进行配置。
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',
            ],
      },
    },
]
django默认模板,如果要改用Jinja2模板,需要对以下几点进行修改:
安装Jinja2:pip install jinja2
在应用目录下添加jinja2_env.py设定环境变量。
# from __future__ import absolute_import# 如果是py2就取消这行的注释
from django.contrib.staticfiles.storage import staticfiles_storage
from django.urls import reverse
from jinja2 import Environment

def environment(**options):
    env = Environment(**options)
    env.globals.update({
      'static': staticfiles_storage.url,
      'url': reverse,
    })
    return env
并在管理目录下setting.py中做出3项修改:
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.template.backends.jinja2.Jinja2'
      ,
      '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',
            ],
            'environment': 'jinja2_env.environment',
      },
    },
]
Jinja2模板使用可参考:https://blog.csdn.net/qq_19268039/article/details/83245311
WSGI_APPLICATION = 'MyBlog.wsgi.application'
网关接口配置,默认即可
DATABASES = {
    'default': {
      'ENGINE': 'django.db.backends.sqlite3',
      'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
数据库配置,默认使用Sqlite3,如需更换其他数据库,需在此处进行设置,如MySQL等。
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/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static/img"),
    os.path.join(BASE_DIR, "static/css"),
]

MEDIA_URL ='/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
静态路径和上传路径设置,这个非常重要,不然可能访问不到静态文件或者无法上传。

至此,settings.py配置完成。下一步要配置urls.py文件。

永恒的蓝色梦想 发表于 2020-5-17 17:26:47

前排支持~

Tip0 发表于 2020-5-17 17:32:16

观摩大佬
页: [1]
查看完整版本: 【原创教程】建站实录系列之Django3+Xadmin2+CKeditor打造个人博客(4)