Не удается создать форму входа в DJANGO, которая принимает либо имя пользователя, либо электронную почту
Я пытаюсь создать форму входа в django, которая принимает либо имя пользователя, либо email. Я сделал пользовательскую аутентификацию бэкенда и она работает. Проблема заключается в типе ввода HTML. Метод формы - POST, и я написал тег csrf_token, но если я установлю тип ввода text, то при попытке входа с именем пользователя все работает, но когда я ввожу email, я получаю ошибку: CSRF verification failed. Запрос прерван. А если я устанавливаю тип ввода email, то я не могу ввести имя пользователя. Моя версия django - 4.0.6, а версия python - 3.10.4
Добавьте это в urls.py
файл
path('', include('django.contrib.auth.urls')),
Добавьте это в свой HTML template
{% extends 'registration/base.html' %}
{% block title %} Login {% endblock title %}
{% load crispy_forms_tags %}
{% block body %}
<h4>Hello! let's get started</h4>
<h6 class="font-weight-light">Sign in to continue.</h6>
<form class="pt-3" method="post">
{% csrf_token %}
{{ form|crispy }}
<div class="mt-3">
<button class="btn btn-block btn-primary btn-lg font-weight-medium auth-form-btn">SIGN IN</button>
</div>
<div class="my-2 d-flex justify-content-between align-items-center">
<div class="form-check">
<label class="form-check-label text-muted">
<input type="checkbox" class="form-check-input"> Keep me signed in </label>
</div>
<a href="#" class="auth-link text-black">Forgot password?</a>
</div>
<div class="text-center mt-4 font-weight-light">
</div>
</form>