Как сделать проверку наличия данных для авторизации Django?
Итак, я написал код для страницы reg.html. При правильном заполнении данных для регистрации форма сохраняется и аккаунт создается. Я все проверил, данные заносятся в БД. Осталось сделать авторизацию. Но вот вопрос - как сделать проверку наличия правильных данных? Проще говоря, если пользователь авторизуется и такой аккаунт существует на самом деле - то он должен перенаправлен на главную страницу. Иначе - сайт выдаст "Такого аккаунта нет". Привожу код ниже.
views.py:
from django.shortcuts import render, redirect
from .form import SignUpForm, RegisterForm
def index(request):
return render(request, 'main/index.html',)
def about(request):
return render(request, 'main/about.html')
def register(request):
if request.method == 'POST':
form = RegisterForm(request.POST)
if form.is_valid():
saved = form.save(commit=False)
saved.save()
form = RegisterForm()
return render(request, 'main/reg.html', {
'form': form
})
def log(request):
if request.method == "POST":
form = SignUpForm(request.POST)
if form.is_valid():
pass
form = SignUpForm()
return render(request, 'main/log.html', {
'form': form
})
form = LoginForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
password=form.cleaned_data['password']
user = authenticate(request,username=username,password=password)
if user:
login(request, user)
messages.success(request,f'Hi {username.title()}, welcome back!')
return redirect('mprofil')
# either form not valid or user is not authenticated
messages.error(request,f'Invalid username or password')
Пробуй