Django的用户群我了解基本的用户认证,登录,创建帐户,扩展用户模型...与装饰VS许可
我想创建一个网站,教师和学生可以登录。教师将有机会获得页面的学生不能访问权后的家庭作业等...
我认为这是可能的做到这一点:
- 在创建用户分配到特定的组。
- 使用装饰器来限制对相应组的访问。
。
@login_required
@user_passes_test(not_in_student_group, login_url='/login/')
def some_view(request):
# ...
def not_in_student_group(user):
if user:
return user.groups.filter(name='Student').count() == 0
return False
笔记,我从上面的代码:
http://bradmontgomery.blogspot.com/2009/04/restricting-access-by-group-in-django.html
问:
如何使用许可,并从上面的方法有什么不同?
如何使用权限以及定义权限如何帮助我实现上述结果? (如果有可能的话,它应该被使用?)