Django: встроенный логин не работает с существующим пользователем - PullRequest
1 голос
/ 28 марта 2020

У меня есть вопрос относительно django встроенной системы аутентификации.

Я слежу за этим DjangoDo c.

Поэтому я добавил URL-адреса в my urls.py:

from django.urls import include, path
from .views.views_user import *

from rest_framework.urlpatterns import format_suffix_patterns

urlpatterns = [
    path('accounts/', include('django.contrib.auth.urls'))
]

urlpatterns = format_suffix_patterns(urlpatterns)

А вот мой login.html:

{% extends "base.html" %}

{% block content %}

{% if form.errors %}
<p>Your username and password didn't match. Please try again.</p>
{% endif %}

{% if next %}
    {% if user.is_authenticated %}
    <p>Your account doesn't have access to this page. To proceed,
    please login with an account that has access.</p>
    {% else %}
    <p>Please login to see this page.</p>
    {% endif %}
{% endif %}

<form method="post" action="{% url 'login' %}">
{% csrf_token %}
<table>
<tr>
    <td>{{ form.username.label_tag }}</td>
    <td>{{ form.username }}</td>
</tr>
<tr>
    <td>{{ form.password.label_tag }}</td>
    <td>{{ form.password }}</td>
</tr>
</table>

<input type="submit" value="login">
<input type="hidden" name="next" value="{{ next }}">
</form>

{# Assumes you setup the password_reset view in your URLconf #}
<p><a href="{% url 'password_reset' %}">Lost password?</a></p>

{% endblock %}

Таким образом, он правильно отображает шаблон с формой входа в систему. И у меня есть несколько существующих пользователей, мы можем видеть их с почтальоном:

[
    {
        "id": 1,
        "username": "AdminEP",
        "password": "pbkdf2_sha256$180000$ETFUyfQsKN6j$7GAACOTgYheVjtHdeOpVCLd3qhIxttolISGLqqjE50s=",
        "first_name": "",
        "last_name": "",
        "email": "maxpon@live.com",
        "is_a": false,
        "is_o": false
    },
    {
        "id": 2,
        "username": "Max",
        "password": "12345678",
        "first_name": "Max",
        "last_name": "Pon",
        "email": "maxpon@live.com",
        "is_a": true,
        "is_o": false
    },
    {
        "id": 3,
        "username": "Seb",
        "password": "12345678",
        "first_name": "Seb",
        "last_name": "Pon",
        "email": "sebpon@live.com",
        "is_a": true,
        "is_o": false
    }
]

Но когда я пытаюсь войти, я получаю сообщение:

Your username and password didn't match. Please try again.

Это сообщение в моем шаблон, если вход в систему не удается, но я не понимаю, почему он не работает.

Я уверен, что упускаю что-то простое, но я не понимаю.

Может кто-нибудь помочь мне ушел?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...