「基于Django的全民健康智慧中医数字服务平台」后端应用系统配置
发布时间
阅读量:
阅读量
试读内容 :
「基于Django的全民健康智慧中医数字服务平台」项目文章目录
「基于Django的全民健康智慧中医数字服务平台」中医问诊学习,开发原理理论基础
「基于Django的全民健康智慧中医数字服务平台 V2.0」产品设计&技术应用
如果你对中医充满热情,请留言讨论。如果能理解我的观点或建议对你有所帮助,则可以请我喝一杯沪上阿姨;感激之情溢于言表。
文章目录
- 内容简介
- 创建项目
- 前端其他应用
- 配置文件setting.py
- 创建超级用户
内容简介
以家庭健康数字化服务为目标的 Django 平台
创建项目
# 创建项目命令行执行
django-admin.exe startproject TCM_ManageMent
代码解读
前端其他应用
导入并集成Xadmin和DjangoUeditor,在项目根目录中创建extra_apps文件夹,并将下载的Xadmin和DjangoUeditor复制到其中即可完成配置。配置完成后,请确保extra_apps文件夹的位置如图所示。

2.添加其他文件夹
# 根据自己需要进行添加,可以先添加后面使用到了再做说明
apps 网站应用使用
conf 配置nigix使用
media 配置多媒体文件使用
static 配置静态文件使用
templates 配置html模板使用
代码解读
配置文件setting.py
1.添加配置文件的路径
import os
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))
代码解读
2.配置调试参数
DEBUG = True # 这里未来搭建好网站之后使用False关闭即可
ALLOWED_HOSTS = ['*'] # 修改成任何域名都可以访问
代码解读
3.配置应用内容
INSTALLED_APPS = [
...
# 添加功能模块
'xadmin', # xadmin主体
'reversion', # 用于数据回滚
'general_data', # 通用数据引用
'articles', # 文章应用
'users', # 用户应用
'my_home', # 我的主页应用
'crispy_forms', # 展示表单
'rest_framework', # 前后端分离框架
'rest_framework.authtoken', # 用户Token
'django_filters', # 过滤器
'DjangoUeditor', # 富文本编辑器
'rest_framework_swagger',
'corsheaders', # 跨域问题
]
代码解读
4.配置前端模板TEMPLATES
# 这里直接复制过来就行了,可以解决大部分前端无法展示的问题
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',
],
'libraries': { # Adding this section should work around the issue.
'staticfiles': 'django.templatetags.static',
}
},
},
]
代码解读
5.配置用户类继承model
# 直接添加即可对应你设置的用户列表模型
AUTH_USER_MODEL = 'users.UserProfile'
代码解读
6.解决跨域的问题
CORS_ALLOW_CREDENTIALS = True
CORS_ORIGIN_ALLOW_ALL = True
CORS_ORIGIN_WHITELIST = ('http://127.0.0.1:8000',)
# CORS_ORIGIN_WHITELIST = ('你的API的部署IP',) # 部署到服务器上进行替换
CORS_ALLOW_METHODS = (
'DELETE',
'GET',
'OPTIONS',
'PATCH',
'POST',
'PUT',
'VIEW',
)
CORS_ALLOW_HEADERS = (
'XMLHttpRequest',
'X_FILENAME',
'accept-encoding',
'authorization',
'content-type',
'dnt',
'origin',
'user-agent',
'x-csrftoken',
'x-requested-with',
'Pragma',
)
代码解读
7.配置数据仓库Mysql
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'tcm_manage',
'USER': '你的用户名',
'PASSWORD': '你的密码',
'HOST': '你的IP地址',
'PORT': '你的端口号',
}
}
代码解读
8.配置Mysql版本
# 修改以下目录的文件,否则mysql版本过高无法使用
# 直接添加下面内容即可
import pymysql
pymysql.version_info = (1, 3, 13, "final", 0)
pymysql.install_as_MySQLdb()
代码解读

9.配置语言和时区
# 设置语言、时区
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False # 数据库存储使用时间,True时间会被存为UTC的时间
代码解读
10.配置静态文件目录和媒体文件目录
# 添加静态文件路径
STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)
# 这个在配置nigix时候会使用,否则后台无样式,暂时不需要
# STATIC_ROOT = os.path.join(BASE_DIR, "static")
# 设置我们上传文件的路径
MEDIA_URL = '/media/'
MEDIAFILES_DIRS = (os.path.join(BASE_DIR, 'media'),)
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
代码解读
11.配置REST_FRAMEWORK
# 根据自己的需要进行调整接口应用
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
# 'rest_framework.permissions.IsAuthenticated', # IsAuthenticated 仅通过认证的用户
# 'rest_framework.permissions.AllowAny', # AllowAny 允许所有用户
# 'rest_framework.permissions.IsAdminUser', # IsAdminUser 仅管理员用户
# 'rest_framework.permissions.IsAuthenticatedOrReadOnly', # IsAuthenticatedOrReadOnly 认证的用户可以完全操作,否则只能get读取
),
'DEFAULT_AUTHENTICATION_CLASSES': (
# 'rest_framework_simplejwt.authentication.JWTAuthentication',
'rest_framework_jwt.authentication.JSONWebTokenAuthentication', # 在 DRF中配置JWT认证
'rest_framework.authentication.BasicAuthentication', # 在 DRF中基础认证信息,特定认证修改使用
# 'rest_framework.authentication.TokenAuthentication', # 全局Token认证
# 'rest_framework.authentication.SessionAuthentication', # 全局Session认证
# 'article.auth.MyTokenAuthentication', # 自定义的带过期的认证
),
'DEFAULT_RENDERER_CLASSES': (
'rest_framework.renderers.JSONRenderer',
),
'DEFAULT_PARSER_CLASSES': (
'rest_framework.parsers.JSONParser',
),
'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema',
# 新版drf schema_class默认用的是rest_framework.schemas.openapi.AutoSchema
}
代码解读
12.配置JWT身份认证
# 配置jwt载荷中的有效期设置
JWT_AUTH = {
'JWT_EXPIRATION_DELTA': datetime.timedelta(days=1), # 设置Token有效期
'JWT_AUTH_HEADER_PREFIX': 'JWT', # token前缀:headers中 Authorization 值的前缀
'JWT_ALLOW_REFRESH': True, # 刷新token:允许使用旧的token换新token
# 'JWT_REFRESH_EXPIRATION_DELTA': datetime.timedelta(hours=24),# token有效期:token在24小时内过期, 可续期token
'JWT_RESPONSE_PAYLOAD_HANDLER': 'users.utils.jwt_response_payload_handler', # 5.自定义JWT载荷信息:自定义返回格式,需要手工创建
}
代码解读
创建超级用户
要记得自己设置的用户名和密码
# 创建超级用户, 根据提示输入用户名、邮箱、密码,用于django后台管理系统登陆
# 要记得自己设置的用户名和密码
python manage.py createsuperuser
代码解读
全部评论 (0)
还没有任何评论哟~
