Django Custom Login Form Submission Does Not Go to LOGIN_REDIRECT_URL or Display Errors

Я пытаюсь создать пользовательскую форму входа в Django 3.2.

Когда я использую стандартную шаблонную форму входа в систему, используя {{ form.as_p }}, при успешном входе в систему я попадаю на LOGIN_REDIRECT_URL, определенную в settings.py. Неудачный вход в систему показывает ошибки над формой.

Но когда я использую пользовательскую форму входа, успешный вход возвращает меня на страницу входа. Я просмотрел сгенерированный HTML для рабочей формы, но не могу понять, что я делаю неправильно. Неудачный вход ведет себя так же и не выдает никаких ошибок.

Что я здесь упускаю?

registration/login.html (работает как ожидалось)

<html>
  <body>
    <h1>Log In<h1>
    <form method="post">
      {% csrf_token %}
      {{ form.as_p }}
      <button type="submit">Log In</button>
    </form>
  </body>
</html>

registration/login.html (не работает)

<html>
  <body>
    <h1>Log In<h1>

    <form method="post">
      {% csrf_token %}

      <div class="mb-3">
        <label for="id_username">Email</label>
        <input id="id_username" class="form-control form-control-lg" type="email" name="email" placeholder="Enter your email" />
      </div>

      <div class="mb-3">
        <label for="id_password">Password</label>
        <input id="id_password" class="form-control form-control-lg" type="password" name="password" placeholder="Enter your password" />
      </div>

      <small>
        <a href="{% url 'password_reset' %}">Forgot password?</a>
      </small>

      <button type="submit">Log In</button>
    </form>
  </body>
</html>

urls.py (на уровне проекта)

urlpatterns = [
  path('auth/', include('django.contrib.auth.urls')),
  path('', include('app.urls')) 
]
Вернуться на верх