django auth - 当权限列表为空时,has_perm 返回 True
我想知道为什么此代码部分打印出以下内容:
print "request.user.has_perm('bug_tracking.is_developer'): " + str(request.user.has_perm('bug_tracking.is_developer'))
print request.user.get_all_permissions()
request.user.has_perm('bug_tracking.is_developer'): True
set([])
如果所有权限列表为空,我希望 request.user.has_perm('bug_tracking.is_developer') 返回 false!?
I'm wondering why this code section prints out the following:
print "request.user.has_perm('bug_tracking.is_developer'): " + str(request.user.has_perm('bug_tracking.is_developer'))
print request.user.get_all_permissions()
request.user.has_perm('bug_tracking.is_developer'): True
set([])
I would expect that request.user.has_perm('bug_tracking.is_developer') returns false if the list of all permissions is empty!?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
huups...是超级用户;-)
超级用户状态
指定该用户拥有所有权限,而无需明确分配这些权限。
huups...was a super user ;-)
Superuser status
Designates that this user has all permissions without explicitly assigning them.
另请注意,如果您的用户模型中有一个
has_perm
方法,则身份验证后端的has_perm
方法将永远不会被调用。Also note that if you have a method
has_perm
in you User model, the authentication backends'has_perm
methods will not called ever.