django的简单基于角色的用户权限。
custom-user-roles的Python项目详细描述
添加userrolesdo已安装的应用程序
INSTALLED_APPS = ( ... 'userroles', )
添加USER_ROLES设置
USER_ROLES = ( 'manager', 'moderator', 'client', )
定义自定义用户模型(可选)
AUTH_USER_MODEL = 'custom_user.EmailUser'
为用户角色中定义的任何角色添加子角色设置(可选)
MANAGER_ROLES = ( 'staff_manager', 'business_manager' )
子代位可以有子代位等等。但是要小心不要重复这些名字!
decorator提供了与django的login\u required和permission\u required相似的行为。如果访问视图的用户没有所需的角色,则会将其重定向到登录页。
from userroles.decorators import role_required @role_required('manager', 'moderator') def view(request): ...
或
from userroles.decorators import role_required from userroles import roles @role_required(roles.manager, roles.moderator) def view(request): ...
如果用户有一个所需角色的子角色,它也会通过de user测试!