根据django中的用户权限限制字段

时间:2015-05-30 10:27:34

标签: django django-rest-framework

我正在使用Django rest框架构建API。我必须根据登录用户的类型限制对字段的访问(读取或写入访问)。如何进行操作?我正在考虑为不同的用户角色编写单独的序列化器(我将获得一个访问令牌,每个请求使用我可以验证用户,下一步将获取用户的角色,根据我想要限制用户可以看到/编辑的字段。

1 个答案:

答案 0 :(得分:1)

如果您想为某些用户提供模型级权限以执行某些操作,您可以使用custom permissions执行此操作,如下所示:

class T21Turma(models.Model):
    class Meta:
        permissions = (("can_view_boletim", "Can view boletim"),
                       ("can_view_mensalidades", "Can view mensalidades"),)

然后,您可以根据权限制作多个序列化程序并在视图中将它们交换出来,也可以修改序列化程序dynamically的字段。