基于python+vue在线教学系统flask-django-nodejs

摘 要
在线教学系统采用B/S模式,促进了在线教学系统的安全、快捷、高效的发展。传统的管理模式还处于手工处理阶段,管理效率极低,随着用户的不断增多,传统基于手工管理模式已经无法满足当前用户需求,随着信息化时代的到来,使得在线教学系统的开发成了必然。
 
语言:Python
框架:django/flask
软件版本:python3.7.7
数据库:mysql 
数据库工具:Navicat
前端框架:vue.js
通过比较两个不同因素的框架,可以看出Flask和Django不能被标记为单一功能中的最佳框架。当Django在快速发展的大型项目中看起来更好并且提供更多功能时,Flask似乎更容易上手。这两个框架对于开发Web应用程序都非常有用,应根据当前的需求和项目的规模来选择它们。
最新python的web框架django/flask都可以开发.基于B/S模式,前端技术:nodejs+vue+Elementui+html+css
,前后端分离就是将一个单体应用拆分成两个独立的应用:前端应用和后端应用,以JSON格式进行数据交互.充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护等特点
本网站系统使用动态网页开发django/flask框架,python技术,MySQL作为后台数据库。设计开发了具有管理员;首页、个人中心、班级管理、学生管理、教师管理、课程名称管理、课程资料管理、发布问题管理、在线答疑管理、留言板管理、系统管理,学生;首页、个人中心、发布问题管理、在线答疑管理、我的收藏管理,教师;首页、个人中心、课程资料管理、发布问题管理、在线答疑管理,前台首页;首页、课程资料、公告信息、留言反馈、个人中心、后台管理等功能的在线教学系统。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。目 录
第1章 绪论 1
1.1 课题背景及研究意义 2
1.1.1 课题背景 3
1.1.2 研究意义 4
1.2 开发工具的选用及语言介绍 5
1.2.1 python技术介绍 6
1.2.2 MYSQL数据库 7
1.2.3 B/S结构 8
1.2.4 django/flask框架 9
第2章 需求分析与可行性分析 13
2.1 功能需求分析 13
2.2 可行性分析 13
2.2.1技术可行性:技术背景 13
2.2.2经济可行性 14
2.2.3操作可行性: 14
第3章 系统总体设计 15
3.1 系统的结构划分 15
3.2 系统的流程分析 17
3.2.1操作流程 17
3.2.2添加信息流程 17
3.2.3删除信息流程 18
3.3 数据库设计 19
3.3.1 数据库实体 19
3.3.2数据表 21
第4章 系统实现过程(详细设计) 25
4.1 运行环境 25
4.1.1 硬件环境 25
4.1.2 软件环境 25
4.2 系统实现 25
4.2.1学生功能模块 25
4.2.2教师功能模块 25
4.2.3管理员功能模块 26
4.2.4前台首页功能模块 28
第5章 系统测试 31
5.1系统测试的目的 31
5.2系统测试方法 31
5.3功能测试 31
第6章 总结 34
参考文献 35
致谢 36
附录 34

第1章 绪论
1.1 课题背景及研究意义
1.1.1 课题背景
经过互联网近几年的蓬勃发展,整个现代社会的人工查询、手工备案方式已经慢慢地从本质上发生了变化。上世纪90年代以后,我们国家整体经济水平逐渐提高,人民的生活水平有了极大的进步。互联网行业,乃至与其有关联的传统行业,例如教学行业的蓬勃发展,《电子商务法律法规》等一系列关于网络交易法规的出台,阻碍网上交易的各个难关被一一攻破,电子商务的趋势越来越壮大。
1.1.2 研究意义
社会主义进入新时代,经济实力越来越强。我们也变得越来越忙碌、对生活的要求也变得更加严格,对快速和方便的服务的需求也在逐渐增加。因此,对在线教学系统的管理的要求也越来越严格。为适应时代的发展,各大学院开始广泛地使用电脑来进行管理,并推出在线教学系统,为提高工作人员效率提供了一种新的方式,并且减轻了他们的工作强度,为用户提供更加方便、快捷、安全而高效的系统,实现双赢。
于此同时,实现在线教学系统的计算机化也是顺应时代潮流的举措,现如今在线教学信息正逐渐增加,引起了用户的注视,在线教学信息的管理工作变得越来越困难,在这一客观需要的推动下,建立、完善、发展在线教学系统,可以为用户带来极大的方便。
本系统即为方便管理员和学生与教师而制作的网上在线教学系统,结合了用户的需求,设计出的一个基于python技术、MySQL数据库的网上在线教学系统。
1.2 开发工具的选用及语言介绍
本次毕业设计是一个基于B/S模式的在线教学系统,是一个在网络环境下运行的网站,采用python技术,应用的技术有django/flask框架,MySQL作为后台数据库[4]。

1.2.2 MySql数据库
Mysql的语言是非结构化的,用户可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了的方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。
数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。

1.2.3 B/S结构
BROWSER/SERVER程序架构方式是使用电脑中安装的各种浏览器来进行访问和使用的,相比C/S的程序结构不需要进行程序的安装就可以直接使用。BROWSER/SERVER架构的运行方式是在远程的服务器上进行安装一个,然后在任何接入互联网的电脑上访问和使用。BROWSER/SERVER架构的开发方式给用户带来了极大的便利,在任何时间和地点都可以使用开发的程序系统。
在B/S的结构中,用户可以在任何可以上网的地方访问和使用系统网站的功能,没有地域和时间等方面的限制,B/S结构是把程序完整放置到计算机网络的服务器上,通过计算机互联网给用户提供远程的网络服务。在三层体系结构的B/S系统中,通过浏览器,会员可以对很多服务器发出请求, B/S系统会很大程度的降低工作量,用户只需要安装运行较少的用户端即可,大量的工作将由服务器承担,另外,服务器也完成包括访问数据库,执行应用程序的工作等等。
B/S结构主要有三层,分别为数据层、控制逻辑层和视图层。用户通过视图层,让控制层调用数据层的数据,从而达到整个访问过程。三层相互独立,维护方便,使用安全,三层有互相调用,提高效率。
第2章 需求分析与可行性分析
2.1 功能需求分析
在线教学系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。
系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改在线教学系统信息,这样既能节省时间,不用再像传统的方式耽误时间,真的很难去满足用户的各种需求。所以在线教学系统的开发不仅仅是能满足用户的需求,还能提高管理员的工作效率,减少原有不必要的工作量。
2.2 可行性分析
2.2.1技术可行性:技术背景

本企业网站在Windows操作系统中进行开发,并且目前PC机的性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。
系统的开发环境和配置都是可以自行安装的,系统使用python技术开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。
(1)硬件可行性分析
在线教学系统及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。
(2)软件可行性分析
提供类似于借口动态模型的通用机制,设计更加集中。 此外,可以使用django/flask框架轻松实现模块化和存储信息。另外,代码重用,也可以很好地反映出来。因此,考虑到系统的实际情况,选择python作为系统开发技术。通过以上分析,系统的设计和实现在软件中是可行的。
因此,我们从两个方面进行了可行性研究,可以看出系统的开发没有问题。
2.2.2经济可行性
在在线教学系统开发之前所做的市场调研及其他的相关管理系统,都是没有任何费用的,都是通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于在线教学系统的开发在经济上是完全可行的,没有任何费用支出的。
使用比较成熟的技术,系统是基于python技术的开发,采用Mysql数据库。所以系统在开发人力、财力要求不高,具有经济可行性。
2.2.3操作可行性:
可操作性主要是对在线教学系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员、学生与教师三个权限角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。

2.3 系统性能分析
(1)系统响应效率:页面响应时问应该在3秒以内,最长不能超过4秒,并支持至少10000人同时在线所有系统。
(2)界面简洁清晰:系统界面要求简单明了,容易操作,符合用户操作习惯。
(3)储存性高:因为在线教学系统中有很多的信息需要存储,因此对于系统的存储量有很大的要求,需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。
(4)易学性:该系统在操作上必须简单好上手,没有很多复杂的操作,只需要简单的进行学习就能操作该系统。
(5)稳定性需求:开发的在线教学系统要求运行稳定,运行过程中无界面不清楚、字体模糊等现象。
3.3.2数据表
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表4-1 allusers表
列名 数据类型 长度 约束
id int 11 NOT NULL
username varchar 50 default NULL
pwd varchar 50 default NULL
cx varchar 50 default NULL

表4-2 fabuwenti表
列名 数据类型 长度 约束
id int 11 NOT NULL
addtime varchar 50 default NULL
biaoti varchar 50 default NULL
leixing varchar 50 default NULL
wentimiaoshu varchar 50 default NULL
faburiqi varchar 50 default NULL
xuehao varchar 50 default NULL
xueshengxingming varchar 50 default NULL
banji varchar 50 default NULL
jiaoshigonghao varchar 50 default NULL
jiaoshixingming varchar 50 default NULL
sfsh varchar 50 default NULL
shhf varchar 50 default NULL

表4-3:jiaoshi表
列名 数据类型 长度 约束
id int 11 NOT NULL
addtime varchar 50 default NULL
jiaoshigonghao varchar 50 default NULL
mima varchar 50 default NULL
jiaoshixingming varchar 50 default NULL
xingbie varchar 50 default NULL
zhaopian varchar 50 default NULL
zhicheng varchar 50 default NULL
lianxidianhua varchar 50 default NULL
jiaoshiyouxiang varchar 50 default NULL

表4-4:kechengziliao表
列名 数据类型 长度 约束
id int 11 NOT NULL
addtime varchar 50 default NULL
biaoti varchar 50 default NULL
kechengmingcheng varchar 50 default NULL
tupian varchar 50 default NULL
kechengshipin varchar 50 default NULL
kejianziliao varchar 50 default NULL
ziliaojieshao varchar 50 default NULL
fabushijian varchar 50 default NULL
jiaoshigonghao varchar 50 default NULL
jiaoshixingming varchar 50 default NULL

表4-5:xuesheng表
列名 数据类型 长度 约束
id int 11 NOT NULL
addtime varchar 50 default NULL
xuehao varchar 50 default NULL
mima varchar 50 default NULL
xueshengxingming varchar 50 default NULL
xingbie varchar 50 default NULL
touxiang varchar 50 default NULL
banji varchar 50 default NULL
shouji varchar 50 default NULL
youxiang varchar 50 default NULL

第4章 系统实现过程(详细设计)
4.1 运行环境
4.1.1 硬件环境
开发本系统时,本人所使用的电脑带有酷睿i5的cpu,gtx 950m的显卡,4G的运行内存。
4.1.2 软件环境
开发本系统时本人使用的是windows win 10的操作系统,使用了MySQL数据库管理工具,版本为5.0,JDK版本为1.8,开发工具为ECLIPSE ,版本为8.5,web容器使用的为ECLIPSE 自带的tomcat。
4.2 系统实现
4.2.1学生功能模块
在线教学系统,在在线教学系统页面可以查看首页、个人中心、发布问题管理、在线答疑管理、我的收藏管理等详细内容,进行详情、修改,
 第5章 系统测试
5.1系统测试的目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
在线教学系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在在线教学系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
5.2系统测试方法
在对在线教学系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让在线教学系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个在线教学系统开发所牵扯的该问题都必须一一解决,提高在线教学系统平台的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
5.3功能测试
用户登录测试:
模块名称 测试用例 预期结果 实际结果 是否通过
登录模块 用户名:001 密码:002 弹出错误提示,提示密码错误 弹出错误提示,提示密码错误 通过
登录模块 用户名:002
密码:001 弹出错误提示,提示用户名错误 弹出错误提示,提示用户名错误 通过
登录模块 用户名:001
密码:001 管理员登录成功 管理员登录成功 通过
删除分类测试:
模块名称 测试用例 预期结果 实际结果 是否通过
删除分类模块 分类名:最新通知 删除成功、页面自动跳转 删除成功、页面自动跳转 通过
修改密码测试:
模块名称 测试用例 预期结果 实际结果 是否通过
修改密码模块 原密码:666
新密码:123
确认密码:123 弹出错误提示,提示原密码错误 弹出错误提示,提示原密码错误 通过
修改密码模块 原密码:112 新密码:123
确认密码:122 弹出错误提示,提示确认密码不一致 弹出错误提示,提示确认密码不一致 通过
修改密码模块 原密码:001 新密码:123
确认密码:123 密码修改成功 密码修改成功 通过
通过对功能的测试,在线教学系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。

第6章 总结
2021年的今天,计算机技术已经相当成熟。它的发展推动了许多行业改头换面,计算机的出现使现代社会有了进一步降低人力物力和资源的方法,提高了工作效率。
本文利用php技术和MySQL数据库技术,通过分析实现在线教学系统信息流程的基础上,并完成了在线教学系统。经调试结果显示,本系统基本可以满足一个在线教学系统的需求。系统界面简洁而有美感, 易操作,做出了自己的特色,然而因为时间仓促再加上缺乏系统开发经验和仅依靠少数问卷调查方式,因此本系统还存在不少缺陷、不足,比如:

数据输入的格式并没有全部检验,所以很难保证数据的准确,可能有一些不符合规则的数据也可以通过检验。
系统功能还不够完善,无法提供丰富多彩的在线功能,只能实现一系列功能。
本系统还存在一些漏洞没有解决,在现实应用情境中很难保证完全不出错,但相信通过再次完善,可以调试出真正符合实际的在线教学系统。

致谢
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设能够完成离不开老师的帮助。我对老师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
再次要感谢我的同学们,对我的大力支持及帮助,正是你们和老师不断的帮助、鼓励,给我带来了极大的动力,最终系统可以顺利的运行。我们在交流、谈论的这段时间,将是我未来的财富,我要深深地感谢你们!
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DjangoPythonVue是一种常见的技术组合,用于构建Web应用程序。该系统架构的流程如下: 1. Django 是用于构建Web应用程序的高级Python Web框架。它提供了一种快速构建Web应用程序的方法,包括预制模板和大量的集成功能。Django的主要目的是促进生产力,同时保持代码清晰和可维护性。 2. Python是一种强大的编程语言,可用于开发各种类型的应用程序。它在Web开发方面广泛使用,因为它易于学习,易于使用,而且功能强大。Python有广泛的库和框架,使得快速开发Web应用程序变得简单。 3. Vue 是一种流行的JavaScript框架,用于构建用户界面。它提供了一个渐进式的框架,意味着您可以使用它的一部分或全部功能,并慢慢扩展您的应用程序。Vue的设计特点是易于扩展和轻量化,这使得它成为前端框架的首选之一。 如何组合这三种技术? 首先,您可以使用Django作为Web应用程序的后端框架。Django可以处理与数据库的交互、用户身份验证和后台管理等任务。 接下来,您可以使用Python作为后端开发的核心编程语言。Python被用来编写Django应用程序的视图函数和ORM模型等内容。 最后,您可以使用Vue在前端处理用户界面。Vue可以通过Ajax请求与Django通信以获得数据,并使用Vue的模板功能渲染数据。 总的来说,DjangoPythonVue是非常有效的技术组合,用于构建Web应用程序。它们提供了高生产力、可维护和易扩展的环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值