鱼C论坛

 找回密码
 立即注册
查看: 1593|回复: 2

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

[复制链接]
发表于 2020-5-17 17:20:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
3. 配置settings.py(续)
接上一篇教程:【原创教程】建站实录系列之Django3+Xadmin2+CKeditor打造个人博客(3),成品效果可访问:http://www.bestech.ren
  1. ROOT_URLCONF = 'MyBlog.urls'
复制代码

url配置文件,在urls.py中可以使用include函数对子url进一步进行配置。
  1. TEMPLATES = [
  2.     {
  3.         'BACKEND': 'django.template.backends.django.DjangoTemplates',
  4.         'DIRS': [os.path.join(BASE_DIR, '../../templates')]
  5.         ,
  6.         'APP_DIRS': True,
  7.         'OPTIONS': {
  8.             'context_processors': [
  9.                 'django.template.context_processors.debug',
  10.                 'django.template.context_processors.request',
  11.                 'django.contrib.auth.context_processors.auth',
  12.                 'django.contrib.messages.context_processors.messages',
  13.             ],
  14.         },
  15.     },
  16. ]
复制代码

django默认模板,如果要改用Jinja2模板,需要对以下几点进行修改:
安装Jinja2:pip install jinja2
在应用目录下添加jinja2_env.py设定环境变量。
  1. # from __future__ import absolute_import  # 如果是py2就取消这行的注释
  2. from django.contrib.staticfiles.storage import staticfiles_storage
  3. from django.urls import reverse
  4. from jinja2 import Environment

  5. def environment(**options):
  6.     env = Environment(**options)
  7.     env.globals.update({
  8.         'static': staticfiles_storage.url,
  9.         'url': reverse,
  10.     })
  11.     return env
复制代码

并在管理目录下setting.py中做出3项修改:
  1. TEMPLATES = [
  2.     {
  3.         'BACKEND': 'django.template.backends.django.DjangoTemplates',
  4.         'DIRS': [],
  5.         'APP_DIRS': True,
  6.         'OPTIONS': {
  7.             'context_processors': [
  8.                 'django.template.context_processors.debug',
  9.                 'django.template.context_processors.request',
  10.                 'django.contrib.auth.context_processors.auth',
  11.                 'django.contrib.messages.context_processors.messages',
  12.             ],
  13.         },
  14.     },
  15.     {
  16.         'BACKEND': 'django.template.backends.jinja2.Jinja2'
  17.         ,
  18.         'DIRS': [os.path.join(BASE_DIR, 'templates')]
  19.         ,
  20.         'APP_DIRS': True,
  21.         'OPTIONS': {
  22.             'context_processors': [
  23.                 'django.template.context_processors.debug',
  24.                 'django.template.context_processors.request',
  25.                 'django.contrib.auth.context_processors.auth',
  26.                 'django.contrib.messages.context_processors.messages',
  27.             ],
  28.             'environment': 'jinja2_env.environment',
  29.         },
  30.     },
  31. ]
复制代码

Jinja2模板使用可参考:https://blog.csdn.net/qq_19268039/article/details/83245311
  1. WSGI_APPLICATION = 'MyBlog.wsgi.application'
复制代码

网关接口配置,默认即可
  1. DATABASES = {
  2.     'default': {
  3.         'ENGINE': 'django.db.backends.sqlite3',
  4.         'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  5.     }
  6. }
复制代码

数据库配置,默认使用Sqlite3,如需更换其他数据库,需在此处进行设置,如MySQL等。
  1. AUTH_PASSWORD_VALIDATORS = [
  2.     {
  3.         'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
  4.     },
  5.     {
  6.         'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
  7.     },
  8.     {
  9.         'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
  10.     },
  11.     {
  12.         'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
  13.     },
  14. ]
复制代码

用户密码规则设置,依次是相似性检查、最短长度检查、通用规则和数字检查。
  1. LANGUAGE_CODE = 'zh-hans'

  2. TIME_ZONE = 'Asia/Shanghai'

  3. USE_I18N = True

  4. USE_L10N = True

  5. USE_TZ = False
复制代码

语言和时区设置,按上述设置即可。
  1. STATIC_URL = '/static/'
  2. STATIC_ROOT = os.path.join(BASE_DIR, 'static')
  3. STATICFILES_DIRS = [
  4.     os.path.join(BASE_DIR, "static/img"),
  5.     os.path.join(BASE_DIR, "static/css"),
  6. ]

  7. MEDIA_URL ='/media/'
  8. MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
复制代码

静态路径和上传路径设置,这个非常重要,不然可能访问不到静态文件或者无法上传。

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

本帖被以下淘专辑推荐:

  • · django|主题: 61, 订阅: 0
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-5-17 17:26:47 | 显示全部楼层
前排支持~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-17 17:32:16 | 显示全部楼层
观摩大佬
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-19 13:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表