前言
上一章中我们引入Flask-login
实现了用户的登录和退出,然而,在现实情况下,不可能每个用户的权限都一样,比如有的是管理员,而有的只能查询信息,区分用户角色,是设计用户管理模块的最重要任务之一,这一节我们来研究一下用户角色的实现问题。
角色划分
在网络上的很多相关Flask
角色设计的文章中,都是重新建一个角色表,这种方法绝大多数是来自于《Flask Web开发》这本书,有需要该书电子档的同学请在后台留言。 这种新建一个角色表的方法实现起来比较复杂,而且不直观,我研究了很久,发现增加一个角色表实际上使得用户管理变得更复杂了,在这篇文章中,我来介绍自己实现的一种方法。 如果看过前面学习笔记的同学应该还记得,我在
User
模型中曾增加了
level
和
unit
两个字段,设计这两个字段的初衷是:
unit
代表单位,多用来显示用户信息,而
level
即是用户的等级,只要我们依据
level
来设计用户角色,便容易解决该问题。 在
User
中的
level
字段里,设计的是用数字来表示,当然你也可以用各种不同汉字来表示也没问题,这里给出一个对