为了账号安全,请及时绑定邮箱和手机立即绑定

如何限制我的学生不访问 django 中的教师区域?

如何限制我的学生不访问 django 中的教师区域?

慕少森 2022-04-23 16:50:52
我正在创建一个网站,其中有两种类型的用户,学生和教师。我创建了一个用于身份验证的注册和登录页面。现在默认情况下,所有注册的用户都是学生,可以访问视频,也可以访问教师区域(我一直到这里编码)。如果有人想成为那里的老师,那么他们必须提交他们的文件。验证后,他们可以访问教师页面。问题是我不知道如何从管理面板手动授权这些用户,以便他们可以访问特定(教师)页面?我用谷歌搜索了很多,但不明白如何做这件事。我的网站已准备就绪,但我不知道如何限制所有用户访问教师页面,以及在他们的文件验证后,如何授予访问教师页面的权限。
查看完整描述

2 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

您可以创建自己的视图装饰器来检查用户是否是组的成员


from django.contrib.auth.decorators import user_passes_test


def is_teacher(user):

    return user.groups.filter(name='Teacher').exists()


@user_passes_test(is_teacher)

def my_view(request)

    ...


然后您所要做的就是创建一个名为“教师”的组并将教师添加到该组


查看完整回答
反对 回复 2022-04-23
?
ITMISS

TA贡献1871条经验 获得超8个赞

尝试使用内置用户模型中的 is_staff 字段。对于教师,将其设置为 true,对于儿童,将其设置为 false。在此基础上决定赋予每个人的权利。希望能帮助到你。



查看完整回答
反对 回复 2022-04-23
  • 2 回答
  • 0 关注
  • 66 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信