Я хочу сделать следующее: - Разрешить пользователям изменять свой адрес электронной почты в форме. - Если их электронная почта уже существует в базе данных, они видят ошибку, пока отправленное им письмо принадлежит другому лицу, кроме себя. Поэтому, если человек A отправляет письмо по электронной почте [email protected], а лицо B уже имеет это письмо - есть ошибка. Если человек A отправляет письмо по электронной почте [email protected], и это тот же адрес электронной почты, который она использовала, тогда нет ошибки.Редактирование профиля Django
Как это сделать с помощью Django?
У меня есть следующий код:
class UserEditForm(forms.ModelForm):
class Meta:
model = User
fields = ('first_name', 'email', 'last_name',)
def clean_email(self):
email = self.cleaned_data['email']
if email == self.email:
return email
try:
DjangoUser.objects.get(email=email)
raise ValidationError('Email is already taken.')
except DjangoUser.DoesNotExist:
pass
return email
email = forms.EmailField(required=True)
Проблема в том, self.email не дает мне текущий адрес электронной почты человека. :(