完善细节
其实很早就完成了,但不是很想写笔记¯_(ツ)_/¯
增加用户权限控制
增加用户权限控制的方法很简单,所有继承自Base控制器的控制器在执行前都必须执行Base,所以我们写多个不同的Base,对应不同的表,在Base中进行用户类别的判断,如果他是可以访问这个表的用户,即通过,如果不行,则直接弹出权限错误。(这里有个小改动,将超级管理员的用户类别从0改为4,因为0一般用来判断是否登录)
1 |
|
这段代码很好理解,凡事继承自他的控制器首先要执行这段代码,意为如果没有用户类别,说明没有登录,会弹出没有登录的错误,如果是用户管理员(1)或者维修员(2),他们是没有权限访问这张表的,所以会弹出权限不足错误。
与此同时,在普通用户的控制器下,应该继承这个类:
1 | use app\keshe\controller\Base; |
这样重复几遍,就能实现每种用户的分离操作,即使用户知道其他类型用户的数据表的路由,他依然无法访问。
退出登录
退出登录的方法十分简单,只需要把退出登录的按钮连接到login界面,然后在执行返回login模版前将session置0即可。
1 | public function login() |
就像这样,虽然用拼音真的很蠢,但是在这么多字段的情况下用拼音比较好分辨¯_(ツ)_/¯。
这样每次进入login界面都会直接退出登录状态。
结束
自此,在稍微调整下细微的差错,加上自己喜欢的CSS样式,这个鸡肋的实验室设备管理系统就做好了,因为课设时间有些紧张,而且还有其他的课程考试,好多想法因为怕出错都没有实验,只做出了最简单的题目所要求的功能,而且没有打磨细节,虽然如此,仍然可以感觉到thinkphp是一款比较优秀的框架,以后一定会深入的学习它。
终于完了,泪目(T^T)。最后放张E-R图来结束这个学习记录(不过好像E-R图要一开始画好耶)
在放上课设报告和模块源码:
参考资料
https://www.bilibili.com/video/BV1Vx411V7fE 千锋教育ThinkPHP5.0框架全方位解读与实战
https://www.bilibili.com/video/BV17J411K7Zd 李炎恢ThinkPHP5.1PHP框架十天精品课堂
https://www.freedgo.com/erd-index.html E-R图在线绘制
thinkphp5.0官方文档