如何处理多个多用户类型?

时间:2018-02-26 01:16:59

标签: django rest authentication django-rest-framework

我正在使用RESTful Django应用,该应用需要两种类型的用户:regularprivileged用户。两个用户都有不同的方式来验证应用程序:

1)Regular用户:将使用phone numberpassword进行身份验证 2)Privileged用户:将使用emailpassword

进行身份验证

处理此类身份验证系统的好策略是什么?有没有办法根据登录用户的类型使用不同的方法(phone numberemail)动态验证?

1 个答案:

答案 0 :(得分:2)

添加标志以定义用户类型并相应地应用检查将是一个好主意。

在你的模特中,

REGULAR = 'r'
PRIVILEGED = 'p'
USER_TYPE = (
    (REGULAR, 'Regular'),
    (PRIVILEGED, Privileged'),
)

type = models.CharField(max_length=1, choices=USER_TYPE, default=REGULAR)

相应地在视图,服务和模板中添加检查。