Я работаю над проектом Django, где пользователи смогут изменять свои имена пользователей вместе с их именем и фамилией в одной форме. В forms.py, я пытаюсь выяснить, существует ли пользователь. Если это так, в нем должна отображаться ошибка. Проблема в том, что если пользователь хочет изменить свое имя и фамилию и оставляет свое имя пользователя на входе, он вызывает ошибку проверки. Очевидно, что это имя пользователя уже существует. Есть ли способ проверить, совпадает ли он с именем пользователя текущего пользователя и не отображать ошибку?Проверка наличия имени пользователя в Django
class ChangeNameForm(forms.ModelForm):
username = forms.CharField(max_length=30)
first_name = forms.CharField(max_length=255)
last_name = forms.CharField(max_length=255)
def clean_username(self):
username = self.cleaned_data['username']
try:
user = User.objects.get(username=username)
except user.DoesNotExist:
return username
raise forms.ValidationError(u'Username "%s" is already in use.' % username)
спасибо.
Спасибо, человек, это именно то, что я искал. – lukas
Heyyy @lukas также может выполнять 'if User.objects.filter (username = username) .count()' – wonderwhy