Django不允许直接编辑用户对象,但您可以添加预存信号并实现独特的电子邮件。对于创建信号,U可以跟随
https://docs.djangoproject.com/en/2.0/ref/signals/
. 然后将以下内容添加到信号中。
@receiver(pre_save, sender=User)
def check_email(sender,instance,**kwargs):
try:
usr = User.objects.get(email=instance.email)
if usr.username == instance.username:
pass
else:
raise Exception('EmailExists')
except User.DoesNotExist:
pass