Почему форма не работает?

Я пытаюсь зарегистрировать расширенного пользователя, для этого у меня есть: views.py

def register(request):
    if request.method == 'POST':
        user_form = UserRegistrationForm(request.POST)
        if user_form.is_valid():
            new_user = user_form.save(commit=False)
            new_user.set_password(user_form.cleaned_data['password'])
            new_user.save()
            return render(request, 'teachers/register_done.html', {'new_user': new_user})
    else:
        user_form = UserRegistrationForm()
        return render(request, 'teachers/registration.html', {'user_form': user_form})

forms.py

class UserRegistrationForm(forms.ModelForm):
    password = forms.CharField(label='Password', widget=forms.PasswordInput)
    password2 = forms.CharField(label='Repeat password', widget=forms.PasswordInput)

    class Meta:
        model = Teacher
        fields = ('subject', 'name', 'surname')

    def clean_password2(self):
        cd = self.cleaned_data
        if cd['password'] != cd['password2']:
            raise forms.ValidationError('Passwords don\'t match.')
        return cd['password2']

models.py

class Teacher(AbstractUser):
    name = models.CharField(max_length=20)
    surname = models.CharField(max_length=20)
    user = models.OneToOneField(settings.AUTH_USER_MODEL, null=True,
        on_delete=models.CASCADE)
    subject = models.ForeignKey(Subject, related_name='teacher_subject',
        null=True, on_delete=models.CASCADE)
    password = models.CharField(max_length=50)

registration.html

{% extends "base.html" %}
{% block title %}
  who
{% endblock %}
{% block content %}
  <form action="." method="post">
    {{ user_form.as_p }}
    {% csrf_token %}
    <p><input type="button" name="" value="register"></p>
  </form>
{% endblock %}

Никаких ошибок я не получаю, но когда нажимаю на кнопку "register" в форме, ничего не происходит, а почему?


Ответы (0 шт):