django restframework中用于身份验证的自定义模型,而不是默认用户模型

django restframework中用于身份验证的自定义模型,而不是默认用户模型,django,rest,authentication,frameworks,Django,Rest,Authentication,Frameworks,我想做一些自定义身份验证为我的用户与用户名或电子邮件与密码。在首次使用电子邮件和密码登录时,api应将相应的用户令牌返回给我。对于使用api的所有其他操作,我需要使用在登录时获得的令牌 我需要一个自定义模型来存储所有用户信息,如用户名、密码、电话、电子邮件、令牌等 如何在django restframework中实现这一点 请引导我实现这一目标。提前感谢。Django rest框架有一个内置的令牌系统,可用于分发和验证令牌。下面是如何使用它的示例 创建令牌 from rest_framework

我想做一些自定义身份验证为我的用户与用户名或电子邮件与密码。在首次使用电子邮件和密码登录时,api应将相应的用户令牌返回给我。对于使用api的所有其他操作,我需要使用在登录时获得的令牌

我需要一个自定义模型来存储所有用户信息,如用户名、密码、电话、电子邮件、令牌等

如何在django restframework中实现这一点


请引导我实现这一目标。提前感谢。

Django rest框架有一个内置的令牌系统,可用于分发和验证令牌。下面是如何使用它的示例

创建令牌

from rest_framework.authtoken.models import Token
user = User.objects.get(pk=some_pk)
token = Token.objects.create(user=user)
验证令牌

if Token.ojects.get(key=token) # token is sent by client side 
    # do some task as auth is successful 
如果要扩展默认用户模型,请创建一个新模型,并在自定义模型中放置一个引用默认用户模型的onetoone字段

class AppUserProfile(models.Model):
    user = models.OneToOneField(User)
    ... # add other custom fields like address or phone

尝试django自定义身份验证谢谢您的回答Arpit Solanki。