Django REST框架/ Django

在我的项目中,我有两种不同类型的用户:

  • 常规的Django用户
  • worker - 通过应用程序API发送消息并通过令牌进行身份验证的用户(基本Django rest框架令牌身份验证)
  • 问题是令牌对象与django用户对象连接。 什么是最好的解决方案 - 为我的员工创建新的用户模型? 我不想扩展用户模型,因为我想在我的管理面板中拥有“用户”和“工作人员”。

    class Worker(models.Model):
        ip = models.GenericIPAddressField()
        created_date = models.DateTimeField()
        last_update = models.DateTimeField()
    
        #  but it's not the way I wish it was done:
        #  user = models.ForeignKey(User)
    

    一般情况下,如果部分用户通过登录/密码登录并且某些用户(工作人员)使用令牌作为身份验证凭据,您将如何解决问题?


    假设你想要有相同的字段,但希望表空间是唯一的,你可以这样做:

    class Worker(models.AbstractBaseUser):
        ip = models.GenericIPAddressField()
        created_date = models.DateTimeField()
        last_update = models.DateTimeField()
    

    否则,如果你想让工作者继承,你可以通过直接继承你的auth用户类来完成本质上的连接:

    class Worker(AUTH_USER_MODEL):
        ip = models.GenericIPAddressField()
        created_date = models.DateTimeField()
        last_update = models.DateTimeField()    
    
    链接地址: http://www.djcxy.com/p/33803.html

    上一篇: Django REST Framework/Django

    下一篇: use two different authentication backends for different types of users