Я не получаю ничего для формы валидации Django

class SignUpForm(UserCreationForm):
class Meta:
    model = models.User
    fields = ["first_name", "last_name", "email"]

def clean_password1(self):
    password = self.cleaned_data.get("password")
    password1 = self.cleaned_data.get("password1")

    print(password, password1)

    if password != password1:
        raise forms.ValidationError("비밀번호가 일치하지 않습니다.")
    else:
        return password

def clean_email(self):
    email = self.cleaned_data.get("email")
    try:
        models.User.objects.get(username=email)
        raise forms.ValidationError("이미 가입된 이메일 입니다", code="existing_user")
    except models.User.DoesNotExist:
        return email

def save(self, commit):
    username = self.cleaned_data.get("email")
    password = self.cleaned_data.get("password")
    user = super().save(commit=False)
    user.username = username
    user.set_password(password)
    user.save()

Вот мой код для валидации и всякий раз, когда я печатаю пароль, Я действительно не понимаю, почему пароль1 выводится правильно, а пароль нет Я получаю none, может ли кто-нибудь объяснить мне, почему это происходит?

Вам необходимо правильно делать отступы. Python читает ваш код как собственные функции и класс. Утверждения, которые принадлежат друг другу, должны иметь одинаковую глубину отступа.

Вернуться на верх