forsaken627

Django 自定义用户认证

Django附带的认证对于大多数常见情况来说已经足够了,但是如何在 Django 中使用自定义的数据表进行用户认证,有一种较为笨蛋的办法就是自定义好数据表后,使用OnetoOne来跟 Django 的表进行关联,类似于这样:

from django.contrib.auth.models import User

class UserProfile(models.Model):
    """
    用户账号表
    """
    user = models.OneToOneField(User)
    name = models.CharField(max_length=32)

    def __str__(self):
        return self.name

    class Meta:
        verbose_name_plural = verbose_name = "用户账号"
        ordering = ['id']

这样做虽然可以简单、快速的实现,但是有一个问题就是我们在自己的表中创建一个用户就必须再跟 admin 中的一个用户进行关联,这简直是不可以忍受的。

admin代替默认User model

  1. 写我们自定义的 models 类来创建用户数据表来代替默认的User model,而不与django admin的进行关联,相关的官方文档在这里

相关文章:

  • 2021-12-22
  • 2021-05-19
  • 2021-11-11
  • 2021-04-10
  • 2021-06-04
  • 2021-06-08
  • 2021-12-14
  • 2021-12-10
猜你喜欢
  • 2021-12-02
  • 2021-10-11
  • 2021-04-09
  • 2022-01-17
  • 2021-08-27
  • 2021-09-23
  • 2021-10-07
  • 2022-01-07
相关资源
相似解决方案