учусь django, а пока создаю пользователя. Я получил эту ошибку MultiValueDictKeyError в / users / signup / "password_1", пожалуйста, помогите мне
views.py, последняя определенная функция, в passwords1. Это место, где указывается ошибка.
from django.shortcuts import render
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.models import User
from django.http import HttpResponseRedirect
from django.urls import reverse
# Create your views here.
def userslogin(request):
if request.method == "POST":
username = request.POST["username"]
password = request.POST["password"]
user = authenticate(request, username=username, password=password)
if user is not None:
login(request, user)
return HttpResponseRedirect(reverse("index"))
else:
return render(request, "users/login.html", {
"message": "Invalid credentials."
})
else:
return render(request, "users/login.html")
def userlogout(request):
logout(request)
return render(request, 'users/logout.html',{
"message": "Succesfully logged out."
})
def usersignup(request):
if request.method == "POST":
username = request.POST["username"]
email = request.POST["email"]
password_1 = request.POST["password_1"]
password_2 = request.POST["password_2"]
myuser = User.objects.create_superuser(username = username,password = password_1, email=email)
if myuser is not None:
myuser.save()
return HttpResponseRedirect(reverse("main"))
else:
return render(request, "users/login.html", {
"message": "Invalid credentials."
})
else:
return render(request, "users/signup.html")
urls.py Здесь нет ничего неправильного, но я все же включил этот файл
from django.urls import path, include
from . import views
import blog
urlpatterns = [
path("", blog.views.main, name="index"),
path('login/',views.userslogin, name = 'login'),
path('logout/',views.userlogout, name = 'logout'),
path('signup/',views.usersignup, name = 'signup'),
]
регистрация. html
{% extends 'users/layout.html' %}
{% block body %}
<h1>Physics Blog</h1>
{% if message %}
<div>{{ message }}</div>
{% endif %}
<form action= "{% url 'signup' %}" method="post">
{% csrf_token %}
<input type="text" placeholder="username" name = "username" id="username">
<input type="email" placeholder="email" name = "email" id="email">
<input type="password" placeholder="password 1">
<input type="password" placeholder="password 2">
<input type="submit">
</form>
{% endblock %}