Я пытаюсь создать страницу входа на django. Сначала я попытался использовать:
from django.shortcuts import render, redirect
from django.contrib import messages
from django.contrib.auth.models import User, auth
# Create your views here.
def login(request):
if request.method== 'POST':
username = request.POST['username']
password = request.POST['password']
User = auth.authenticate(username=username,password=password)
if User is not None:
auth.login(request, User)
return redirect("/")
else:
messages.info(request,'invalid credentials')
return redirect('login')
else:
return render(request,'login.html')
, но получил сообщение об ошибке: MultiValueDictKeyError в / accounts / login. Затем я изменил его на:
def login(request):
if request.method== 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
User = auth.authenticate(username=username,password=password)
if User is not None:
auth.login(request, User)
return redirect("/")
else:
messages.info(request,'invalid credentials')
return redirect('login')
else:
return render(request,'login.html')
, тогда единственная проблема в том, что он всегда показывает неверные учетные данные, даже когда я создал нового пользователя. Помогите пожалуйста.