У меня есть вопрос относительно 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.
Это сообщение в моем шаблон, если вход в систему не удается, но я не понимаю, почему он не работает.
Я уверен, что упускаю что-то простое, но я не понимаю.
Может кто-нибудь помочь мне ушел?
Спасибо!