Регистрация пользователя в django des не работает и не выдает мне никакой ошибки

Я работал над простой регистрационной вевой, которая посылает код активации тоже в django. И проблема в том, что он не выдает мне никакой ошибки и не регистрирует ни одного пользователя, и я не знаю почему? Вот мой код: veiws.py :

def register_page(request):
if request.method == 'POST' :
    form = forms.UserRegister(request.POST)
    if form.is_valid():
        data = form.cleaned_data
        if data['password_1'] != data['password_2'] and '@' in data['email'] and data['username'] != data['email'] and not User.objects.filter(username = data['username']).exists():
            user = User.objects.create_user(username=data["username"] , email = data['email'] , password = data['password1'] , is_active = False)
            user.save()
            v = randint(1000 , 5000)
            subject = 'sample subject'
            message = f'your code : {v}'
            email_from = settings.EMAIL_HOST_USER
            recipient_list = [data['email'] , ]
            send_mail( subject, message, email_from, recipient_list )
            active_code.objects.create(code = v , email = data['email']).save()
            return redirect('home:activeveiw')
        else:
            if data['username'] == data['email']:
                messages.error(request ,'error 506')
            if User.objects.filter(username = data['username']).exists():
                messages.error(request ,'error 789')
            if data['password_1'] != data['password_2'] :
                messages.error(request , 'error 899')
else :
    form = forms.UserRegister()
con = {"form" : form }
return render (request , 'home/register.html' , con)

шаблон :

<form action="" method="post">
{% csrf_token %}
<input type="text" name="username">
<input type="text" name="email">
<input type="text" name="password_1">
<input type="text" name="password_2">
<button type="submit">send</button>
</form>
{% if messages %}
 {% for i in messages %}
  {{ i }}
 {% endfor %}
{% endif %}

Возможно, форма не действительна, поэтому проверьте form.errors, а также переданные данные в request.POST.

Если вы хотите отображать ошибки в шаблоне, вы можете сделать что-то вроде этого:

<ul class="errorlist">
  {% if form.non_field_errors %}
    <li>{{ form.non_field_errors }}</li>
  {% endif %}
  {% for field in form %}
    {% if field.errors %}
      <li>
        {{ field.label }}
        <ul class="errorlist">
          {% for error in field.errors %}
            <li>{{ error }}</li>
          {% endfor %}
        </ul>
      </li>
    {% endif %}
   {% endfor %}
</ul>
Вернуться на верх