项目1:升级学生管理系统的功能
120021. 项目任务介绍
上节课中,使用了1table-crud模板生成了学生管理页面,在这个项目里,新建班级表class
, 仿照学生管理页面,生成一个班级管理页面,并且可以对班级进行增删改查。
2. 建立班级数据表
用Navicat打开数据库my_project
,在新建查询中复制下面的代码:
DROP TABLE IF EXISTS `class`;
CREATE TABLE `class` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`classId` varchar(255) DEFAULT NULL COMMENT '班级ID',
`className` varchar(255) DEFAULT NULL COMMENT '班级名称',
`classStatus` varchar(255) DEFAULT '正常' COMMENT '班级状态',
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
`operation` varchar(255) DEFAULT 'insert' COMMENT '操作; insert, update, jhInsert, jhUpdate, jhDelete jhRestore',
`operationByUserId` varchar(255) DEFAULT NULL COMMENT '操作者userId',
`operationByUser` varchar(255) DEFAULT NULL COMMENT '操作者用户名',
`operationAt` varchar(255) DEFAULT NULL COMMENT '操作时间; E.g: 2021-05-28T10:24:54+08:00 ',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=132 DEFAULT CHARSET=utf8mb4;
BEGIN;
INSERT INTO `class` (`id`, `classId`, `className`, `classStatus`, `remark`, `operation`, `operationByUserId`, `operationByUser`, `operationAt`) VALUES (1, 'C10001', '武当01班', '正常', '重点班', 'jhUpdate', 'admin', '系统管理员', '2022-09-05T16:57:01+08:00');
INSERT INTO `class` (`id`, `classId`, `className`, `classStatus`, `remark`, `operation`, `operationByUserId`, `operationByUser`, `operationAt`) VALUES (2, 'C10002', '丐帮01班', '正常', NULL, 'jhUpdate', 'admin', '系统管理员', '2022-04-27T19:52:53+08:00');
INSERT INTO `class` (`id`, `classId`, `className`, `classStatus`, `remark`, `operation`, `operationByUserId`, `operationByUser`, `operationAt`) VALUES (3, 'C10003', '丐帮02班', '正常', NULL, 'jhUpdate', 'admin', '系统管理员', '2022-04-27T19:52:53+08:00');
INSERT INTO `class` (`id`, `classId`, `className`, `classStatus`, `remark`, `operation`, `operationByUserId`, `operationByUser`, `operationAt`) VALUES (4, 'C10004', '华山03班', '正常', NULL, 'jhUpdate', 'admin', '系统管理员', '2022-04-27T19:52:53+08:00');
INSERT INTO `class` (`id`, `classId`, `className`, `classStatus`, `remark`, `operation`, `operationByUserId`, `operationByUser`, `operationAt`) VALUES (5, 'C10005', '华山01班', '正常', NULL, 'jhUpdate', 'admin', '系统管理员', '2022-04-27T19:52:53+08:00');
COMMIT;
生成class
表:
3. 配置页面与数据接口
用Navicat打开数据库my_project
的_page
表和_resource
表,做下面的配置:
4. 编写前端页面
班级管理classManagement.html
和学生管理studentManagemnet.html
的网页功能是一样的,只是表的字段和数据不一样,需要把跟学生相关的替换成与班级相关的内容,有以下几个部分需要替换:
- 模板部分:标题、新增和修改抽屉中表单涉及的变量和名称等逐一进行修改,例如“学生名称”改为”班级名称”,
studentStatus
改为classStatus
。 - 脚本部分:变量
headers
和改为班级相关的变量和名称;jianghuAxios
函数里面的pageId
改为classManagement
,
5. 配置用户权限
用Navicat打开数据库my_project
, 通过配置下面的表控制权限:
_user
表:
_group
表:
_role
表:
_user_group_role
表:
_user_group_role_page
表:
6. 班级管理页面
按照上面的步骤配置完成,在项目里会出现班级管理页面,但是因为配置了权限,只有属于wudang
组所有成员的和huashan
组的boss
角色可以访问班级管理页面。