我对django身份验证和用户系统有疑问。
我正在创建一个网站,通过外部身份验证系统进行身份验证,该身份验证系统将生成JWT。
目前,我有一个配置文件模型,如下所示:
class Profile(models.Model):
first_name = models.CharField(max_length=20, default="")
last_name = models.CharField(max_length=20, default="")
email = models.EmailField(max_length=50, unique=True, default="")
em_user_key = models.IntegerField(null=True, blank=True, unique=True)
lab = models.CharField(max_length=7, null=True, blank=True)
is_looking_for_job = models.BooleanField(default=False)
is_single = models.BooleanField(default=False)
description = models.TextField(null=True, blank=True)
image = models.ImageField(null=True, blank=True)
resume = models.FileField(null=True, blank=True)
git_account = models.URLField(max_length=500, null=True, blank=True)
facebook_account = models.URLField(max_length=500, null=True, blank=True)
linkedin_account = models.URLField(max_length=500, null=True, blank=True)
def __str__(self):
return self.first_name + " " + self.last_name
所以我根本不需要用户模型,但我想生成更新/删除和验证用户的权限。
我在djangoproject中看到:
“使用authenticate()来验证一组凭据。它将凭据作为默认情况下的关键字参数,用户名和密码,针对每个身份验证后端检查它们,如果凭据对后端有效,则返回User对象。凭据对任何后端无效,或者如果后端引发PermissionDenied,则它返回None。“
但我不想创建用户。
有没有不使用django用户模型的方法吗?如果可以,怎么办?