先说下需求,客户需要做个论坛,角色从高到低分为:
* 超级管理员
* 管理员
* 用户
* 未激活用户
* Ban用户
* 游客
然后权限要求如下:
* 高级别用户享有低级别用户的所有权限
* 超级管理员能够任命管理员、将管理员降级
* 管理员可以ban/unban用户
* topic创造者和管理员都有权限edit/delete某topic
查了下,貌似有个插件[Flask-Principal](http://pythonhosted.org/Flask-Principal/)蛮不错的。不过看得似懂非懂,就自己写了个很简单的,目前够用,分享下:
roles.py定义角色,permission.py定义权限,sample.py则是给出的3种应用场景(有谁知道如何更改gist中文件的显示顺序吗?):
* 超级管理员
* 管理员
* 用户
* 未激活用户
* Ban用户
* 游客
然后权限要求如下:
* 高级别用户享有低级别用户的所有权限
* 超级管理员能够任命管理员、将管理员降级
* 管理员可以ban/unban用户
* topic创造者和管理员都有权限edit/delete某topic
查了下,貌似有个插件[Flask-Principal](http://pythonhosted.org/Flask-Principal/)蛮不错的。不过看得似懂非懂,就自己写了个很简单的,目前够用,分享下:
roles.py定义角色,permission.py定义权限,sample.py则是给出的3种应用场景(有谁知道如何更改gist中文件的显示顺序吗?):