大家好!我是职场程序猿,感谢您阅读本文,欢迎一键三连哦。
🎀 当前专栏:基于Python的毕业设计
精彩专栏推荐👇🏻👇🏻👇🏻
源码下载地址:
https://download.csdn.net/download/m0_46388260/87921410
目录
一、项目简介
在中国地理教学中,围绕着我国的江河湖泊的教学已经成为了地理教学中不可获取的一个中要的组成部分,我国是世界上拥有河流数量最多的国家之一,通过地理知识来了解我国的水资源,能够更好的帮助学生了解国家的国土面积,了解国家的水资源分布,对于保护国家水源等都有着非常好的教学教育意义。而通过网络平台来进行地理知识的教学,能够利用多媒体的方式将传统课本图文形式以多媒体的三维动画、视频播放等方式来呈现在学生面前,可以实现教学趣味性、实用性的提升。本次是通过利用了Python语言来开发一款中学地理-中国江河湖泊教学网站,借助于WEB程序开发来实现课程教学的线上化。
二、系统设计
2.1软件功能模块设计
此次江河湖泊教学网站功能呈现主要包括了江湖湖泊信息总览、河流信息管理、河流在线检索以及用户信息管理四个部分。江河湖泊在功能呈现上主要以我国江河湖泊图片、行政区域介绍、所属河流及水位信息为主,通过基础概况信息的呈现可以帮助学生了解江河湖泊的基本信息。河流管理模块主要包括了河流信息新增以及河流基础信息修改删除,用户可以通过河流检索模块进行河流信息的查询,内容包括了文字及视频信息的呈现。通过用户管理模块可以实现用户信息的添加、修改及删除操作,具体江河湖泊教学网功能结构图如下图所示,
2.2数据库设计
1、用户信息E-R图内容主要以用户登录信息以及用户联系方式内容为主,具体用户信息图例内容呈现如下:
2、河流信息E-R图主要包括了河流基本信息,如河流名称、流域、水流量以及水位地址等信息,具体河流信息图例内容呈现如下:
三、系统项目部分截图
3.1教学网首页界面
中国江河湖泊教学网的首页界面呈现以江河湖泊图片介绍内容为主,用户可以通过系统首页导航栏的江河湖泊获取到详细的信息,同时可以通过河流管理界面来查看和修改河流基本信息,利用河流检索模块可以快速查询获取到需要的河流介绍信息。通过网站首页的个人信息、修改密码以及用户管理模块可以实现在线个人登录信息的修改和维护,具体中国江河湖泊教学网首页界面呈现如下:
3.2江河湖泊信息界面
用户通过首页的江河湖泊界面可以查看中国的所有江河湖泊信息,内容包括了江河湖泊图片、所属行政区域、所属流域以及河流水位等明细内容,用户可以点击对应的图片信息进入到详情界面,江河湖泊模块集中展示了我国江河湖泊的基本信息介绍,具体呈现页面内容如下图所示:
3.3河流信息管理界面
河流管理功能模块可以实现已有江河湖泊信息的修改和删除,同时可以通过上方的新增河流实现河流湖泊信息的新增,用户也可以按照河流名称进行在线搜索查询,河流信息包含了河流名称、流域、水流量、站点代码、地址以及水位等详细内容,具体河流信息管理界面内容呈现如下图所示:
3.4 河流检索查询页面
因我国的江河湖泊所包含的信息量较大,为了帮助学生更好的查询河流信息,可以通过河流检索功能模块实现在线的信息查询,该界面主要呈现了数据查询窗口以及时间天气等基础信息,用户只需要录入需要查询的河流湖泊名称就可以实现在线的搜索,河流检索页面如下:
河流检索信息反馈界面
河流检索信息页面主要包含了河流的名称、河流基础信息以及河流简洁等内容,同时可以通过播放视频和在线播放实现河流介绍视频内容的播放,利用视频播放的方式可以获取到更加直观生动的河流介绍信息,具体河流检索详情界面如下:
用户个人信息界面
用户可以通过个人信息界面查看到个人信息记录,包括用户姓名及联系方式,同时还记录了用户账号创建的时间以及最后修改时间,如需要修改个人密码及用户信息可以通过修改密码及用户管理模块实现个人信息的修改和维护,具体用户个人信息所包含的内容如下图所示:
四、论文目录
摘要 I
abstract II
1 绪论 1
1.1 研究背景 1
1.2 研究的目的和意义 1
1.3 国内外研究现状及分析 2
2 相关技术介绍 3
2.1 Python语言 3
2.2 Django框架技术 3
2.3 B/S架构 3
3 需求分析与功能设计 4
3.1系统功能性需求分析 4
3.2系统的数据需求分析 4
3.3可行性分析 4
3.3.1 经济可行性分析 4
3.3.2 技术可行性分析 5
3.3.3操作可行性 5
3.3.4法律可行性 5
4 系统详细设计 6
4.1 系统功能结构设计 6
4.2 数据库模块设计 6
4.2.1 E-R关系模型设计 7
4.2.2 数据库表内容设计 7
5 系统的实现 9
5.1教学网首页界面 9
5.2江河湖泊信息界面 9
5.3河流信息管理界面 10
5.4河流检索查询页面 10
5.5河流检索信息反馈界面 11
5.6用户个人信息界面 11
6 系统测试 12
6.1 系统测试目的 12
6.2功能测试 12
6.3登录测试 12
6.4测试结果 13
7 总结与展望 14
7.1总结 14
7.2展望 14
致 谢 15
参考文献 16
五、部分核心代码
"""
Django settings for school_epidemic school_epidemic.
Generated by 'django-admin startproject' using Django 3.2.8.
For more information on this file, see
https://docs.djangoproject.com/en/3.2/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/3.2/ref/settings/
"""
import os
from pathlib import Path
# Build paths inside the school_epidemic like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'django-insecure-tp!-oba8k_&by9pw3twb9gnt!2p*llm+q$b0*g!m9k+@myc@e+'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ['*']
# Application definition
INSTALLED_APPS = [
'simpleui',
'import_export',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'index',
'user',
]
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',
]
# TODO
# project需修改项目名称
ROOT_URLCONF = 'website.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',
],
},
},
]
# TODO
# project需修改项目名称
WSGI_APPLICATION = 'website.wsgi.application'
# 数据库配置信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'rivers_and_lakes',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306'
}
}
# Password validation
# https://docs.djangoproject.com/en/3.2/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',
},
]
# 系统语言
LANGUAGE_CODE = 'zh-hans'
# 系统时区
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
CORS_ORIGIN_ALLOW_ALL = True # 允许所有域名跨域(优先选择)
CORS_ALLOW_CREDENTIALS = True # 允许携带cookie:
# 配置管理平台样式
SIMPLEUI_CONFIG = {
# 是否使用系统默认菜单,自定义菜单时建议关闭。
'system_keep': False,
# 用于菜单排序和过滤, 不填此字段为默认排序和全部显示。空列表[] 为全部不显示.
'menu_display': ['权限认证', '湖泊管理', '留言管理', '新闻管理','用户管理'],
# 设置是否开启动态菜单, 默认为False. 如果开启, 则会在每次用户登陆时刷新展示菜单内容。
# 一般建议关闭。
'dynamic': False,
'menus': [
{
'app': 'auth',
'name': '权限认证',
'icon': 'fas fa-user-shield',
'models': [
{
'name': '管理员列表',
'icon': 'fa fa-user',
'url': 'auth/user/'
},
{
'name': '用户组',
'icon': 'fa fa-th-list',
'url': 'auth/group/'
}
]
},
{
'name': '湖泊管理',
'icon': 'fa fa-car',
'models': [
{
'name': '江河湖泊',
# 注意url按'/admin/应用名小写/模型名小写/'命名。
'url': '/admin/index/river',
'icon': 'fa fa-car'
},
]
},
{
'name': '留言管理',
'icon': 'fa fa-th-list',
'models': [
{
'name': '留言列表',
# 注意url按'/admin/应用名小写/模型名小写/'命名。
'url': '/admin/index/messageboard',
'icon': 'fa fa-user'
},
]
},
{
'name': '新闻管理',
'icon': 'fa fa-th-list',
'models': [
{
'name': '新闻列表',
# 注意url按'/admin/应用名小写/模型名小写/'命名。
'url': '/admin/index/news',
'icon': 'fa fa-image'
},
]
},
{
'name': '用户管理',
'icon': 'fa fa-users',
'models': [
{
'name': '用户信息',
'url': '/admin/user/user',
'icon': 'fa fa-users'
},
]
},
]
}
# 配置静态文件路径
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
MEDIA_URL = '/media/'
# 上传图片地址
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
获取源码或论文
如需对应的论文或源码,也可以下方微信联系我