如何在身份验证模型中加密django用户名字段?

如何在身份验证模型中加密django用户名字段?,django,encryption,Django,Encryption,我想在保存到django auth用户模型之前加密用户名数据,并解密用户名数据。我们正在使用这样的模型 class Profile(models.Model): user = models.OneToOneField(User,related_name='profile_data',on_delete=models.PROTECT) 关于此问题,请参考任何解决方案。您可以覆盖保存方法,并在其中执行加密逻辑。它将在将任何内容保存到Profile model之前执行。像这样: 类配置文件(

我想在保存到django auth用户模型之前加密用户名数据,并解密用户名数据。我们正在使用这样的模型

class Profile(models.Model):
    user = models.OneToOneField(User,related_name='profile_data',on_delete=models.PROTECT)

关于此问题,请参考任何解决方案。

您可以覆盖
保存
方法,并在其中执行加密逻辑。它将在将任何内容保存到
Profile model
之前执行。像这样:

类配置文件(models.Model):
user=models.OneToOneField(用户,相关的\u name='profile\u data',on\u delete=models.PROTECT)
def encrypt(自我、待加密值):
#在这里,您将执行加密逻辑,并返回加密值。
#要在保存方法中使用。
...
返回加密的值
def保存(自身、*args、**kwargs):
self.user=self.encrypt(self.user)
super().save(*args,**kwargs)