本课题使用Python语言进行开发。代码层面的操作主要在PyCharm中进行,将系统所使用到的表以及数据存储到MySQL数据库中,方便对数据进行操作本课题基于WEB的开发平台,设计的基本思路是:
前端:vue.js+elementui
框架:django/flask都有,都支持
后端:python
Python版本:python3.7+
数据库:mysql
数据库工具:Navicat
开发软件:PyCharm
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用PyCharm 导入项目,修改配置,运行项目;
将项目中config.ini配置文件中的数据库配置改为自己的配置,然后运行;
--管理员功能模块
登录页面我们可以输入账号密码选择用户权限进行登录
进入管理员页面我们可以看到首页、个人中心、学生管理、教师管理、学历分布管理、教龄分布管理、学生评教管理、优秀教师管理等
在学生管理中我们可以看到学生的一些基本信息等情况
在教师管理中我们可以看到教师的一些基本信息等情况
在学历分布中我们可以看到一些教师的学历情况
教龄分布管理中我们可以看到教师的一些年龄分布情况
在学生评教管理我们可以看到学生评教的一些信息情况
在优秀教师管理我们可以看到一些优秀教师的情况
-- Table structure for table `jiaolingfenbu`
--
DROP TABLE IF EXISTS `jiaolingfenbu`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `jiaolingfenbu` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gonghao` varchar(200) DEFAULT NULL COMMENT '工号',
`jiaoshixingming` varchar(200) DEFAULT NULL COMMENT '教师姓名',
`xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
`jiaoling` varchar(200) DEFAULT NULL COMMENT '教龄',
`jiaolingduan` varchar(200) DEFAULT NULL COMMENT '教龄段',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1619751314390 DEFAULT CHARSET=utf8 COMMENT='教龄分布';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `jiaolingfenbu`
--
LOCK TABLES `jiaolingfenbu` WRITE;
/*!40000 ALTER TABLE `jiaolingfenbu` DISABLE KEYS */;
INSERT INTO `jiaolingfenbu` VALUES (41,'2021-04-30 02:50:01','工号1','教师姓名1','性别1','教龄1','20-30'),(42,'2021-04-30 02:50:01','工号2','教师姓名2','性别2','教龄2','20-30'),(43,'2021-04-30 02:50:01','工号3','教师姓名3','性别3','教龄3','20-30'),(44,'2021-04-30 02:50:01','工号4','教师姓名4','性别4','35','30-40'),(45,'2021-04-30 02:50:01','工号5','教师姓名5','性别5','教龄5','20-30'),(46,'2021-04-30 02:50:01','工号6','教师姓名6','性别6','教龄6','20-30'),(1619751314389,'2021-04-30 02:55:14','1','王老师','男','28','20-30');
/*!40000 ALTER TABLE `jiaolingfenbu` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `jiaoshi`
--
DROP TABLE IF EXISTS `jiaoshi`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `jiaoshi` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gonghao` varchar(200) NOT NULL COMMENT '工号',
`mima` varchar(200) NOT NULL COMMENT '密码',
`jiaoshixingming` varchar(200) DEFAULT NULL COMMENT '教师姓名',
`xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
`touxiang` varchar(200) DEFAULT NULL COMMENT '头像',
`dianhua` varchar(200) DEFAULT NULL COMMENT '电话',
PRIMARY KEY (`id`),
UNIQUE KEY `gonghao` (`gonghao`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COMMENT='教师';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `jiaoshi`
--
--
-- Table structure for table `token`
--
DROP TABLE IF EXISTS `token`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `token` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`userid` bigint(20) NOT NULL COMMENT '用户id',
`username` varchar(100) NOT NULL COMMENT '用户名',
`tablename` varchar(100) DEFAULT NULL COMMENT '表名',
`role` varchar(100) DEFAULT NULL COMMENT '角色',
`token` varchar(200) NOT NULL COMMENT '密码',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
`expiratedtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '过期时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='token表';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `token`
--
LOCK TABLES `token` WRITE;
/*!40000 ALTER TABLE `token` DISABLE KEYS */;
INSERT INTO `token` VALUES (1,1,'abo','users','管理员','bmbzvuim3uvsb9vrbh7ms0sa32qxvkq3','2021-04-30 02:50:57','2021-04-30 03:58:11'),(2,11,'1','xuesheng','学生','0xmrjj1698m6yzlrx5dq91cu294alv86','2021-04-30 02:55:55','2021-04-30 03:57:12'),(3,21,'1','jiaoshi','教师','oliydcn49sn44qw2mmk2aoturtbsvnsl','2021-04-30 02:57:21','2021-04-30 03:57:22');
/*!40000 ALTER TABLE `token` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `users`
--
DROP TABLE IF EXISTS `users`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `users` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`username` varchar(100) NOT NULL COMMENT '用户名',
`password` varchar(100) NOT NULL COMMENT '密码',
`role` varchar(100) DEFAULT '管理员' COMMENT '角色',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='用户表';
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `xuelifenbu`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `xuelifenbu` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gonghao` varchar(200) DEFAULT NULL COMMENT '工号',
`jiaoshixingming` varchar(200) DEFAULT NULL COMMENT '教师姓名',
`xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
`xueli` varchar(200) DEFAULT NULL COMMENT '学历',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1619751259476 DEFAULT CHARSET=utf8 COMMENT='学历分布';
/*!40101 SET character_set_client = @saved_cs_client */;
--
DROP TABLE IF EXISTS `xuesheng`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `xuesheng` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`xuehao` varchar(200) NOT NULL COMMENT '学号',
`mima` varchar(200) NOT NULL COMMENT '密码',
`xueshengxingming` varchar(200) DEFAULT NULL COMMENT '学生姓名',
`xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
`touxiang` varchar(200) DEFAULT NULL COMMENT '头像',
`yuanxi` varchar(200) DEFAULT NULL COMMENT '院系',
`zhuanye` varchar(200) DEFAULT NULL COMMENT '专业',
`shouji` varchar(200) DEFAULT NULL COMMENT '手机',
PRIMARY KEY (`id`),
UNIQUE KEY `xuehao` (`xuehao`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COMMENT='学生';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `xuesheng`
--
--
-- Table structure for table `xueshengpingjiao`
--
DROP TABLE IF EXISTS `xueshengpingjiao`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `xueshengpingjiao` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gonghao` varchar(200) DEFAULT NULL COMMENT '工号',
`jiaoshixingming` varchar(200) DEFAULT NULL COMMENT '教师姓名',
`pingjiaodengji` varchar(200) DEFAULT NULL COMMENT '评教等级',
`kechengpingjia` longtext COMMENT '课程评价',
`suzhipingjia` varchar(200) DEFAULT NULL COMMENT '素质评价',
`pingjiashijian` datetime DEFAULT NULL COMMENT '评价时间',
`xuehao` varchar(200) DEFAULT NULL COMMENT '学号',
`xueshengxingming` varchar(200) DEFAULT NULL COMMENT '学生姓名',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1619751382620 DEFAULT CHARSET=utf8 COMMENT='学生评教';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `xueshengpingjiao`
--
LOCK TABLES `xueshengpingjiao` WRITE;
/*!40000 ALTER TABLE `xueshengpingjiao` DISABLE KEYS */;
INSERT INTO `xueshengpingjiao` VALUES (51,'2021-04-30 02:50:01','工号1','教师姓名1','一星','课程评价1','素质评价1','2021-04-30 10:50:01','学号1','学生姓名1'),(52,'2021-04-30 02:50:01','工号2','教师姓名2','一星','课程评价2','素质评价2','2021-04-30 10:50:01','学号2','学生姓名2'),(53,'2021-04-30 02:50:01','工号3','教师姓名3','一星','课程评价3','素质评价3','2021-04-30 10:50:01','学号3','学生姓名3'),(54,'2021-04-30 02:50:01','工号4','教师姓名4','一星','课程评价4','素质评价4','2021-04-30 10:50:01','学号4','学生姓名4'),(55,'2021-04-30 02:50:01','工号5','教师姓名5','一星','课程评价5','素质评价5','2021-04-30 10:50:01','学号5','学生姓名5'),(56,'2021-04-30 02:50:01','工号6','教师姓名6','一星','课程评价6','素质评价6','2021-04-30 10:50:01','学号6','学生姓名6'),(1619751382619,'2021-04-30 02:56:22','1','王老师','四星','测试','测试','2021-04-30 10:56:07','1','王飞');
/*!40000 ALTER TABLE `xueshengpingjiao` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `youxiujiaoshi`
--
DROP TABLE IF EXISTS `youxiujiaoshi`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `youxiujiaoshi` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`mingcheng` varchar(200) DEFAULT NULL COMMENT '名称',
`leixing` varchar(200) DEFAULT NULL COMMENT '类型',
`gonghao` varchar(200) DEFAULT NULL COMMENT '工号',
`jiaoshixingming` varchar(200) DEFAULT NULL COMMENT '教师姓名',
`touxiang` varchar(200) DEFAULT NULL COMMENT '头像',
`pingxing` varchar(200) DEFAULT NULL COMMENT '评星',
`beizhu` longtext COMMENT '备注',
`fabushijian` datetime DEFAULT NULL COMMENT '发布时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1619751423380 DEFAULT CHARSET=utf8 COMMENT='优秀教师';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `youxiujiaoshi`
--
MTV模式
M:model,模型,负责与数据库交互
V:view,视图是核心,负责接收请求、获取数据、返回结果
T:template,模板,负责呈现内容到浏览器
不像传统模式,通过页面表单FORM BODY上传参数,
前后端通讯一般都是采取标准的JSON格式来交互。
前后端分离 的核心思想是前端页面通过 ajax 调用后端的 restuful api 进行数据交互,而 单页面应用(single page web application,SPA),就是只有一张页面,并在用户与应用程序交互时动态更新该页面的 Web 应用