I'm new to Django and trying to make a user registration and login system in same HTML page.
My user registration part is working but login part is not.
So, my views.py is in the below,
from django.contrib import messages
from django.shortcuts import render, redirect
from django.contrib.auth.models import User, auth
def index(request):
if request.method == "POST":
if request.POST.get('submit') == 'Kayıt Ol':
username= request.POST['username']
email= request.POST['email']
password= request.POST['password']
if User.objects.filter(username=username).exists():
messages.info(request,'Bu kullanıcı adı kullanılıyor')
return redirect('/')
elif User.objects.filter(email=email).exists():
messages.info(request,'Bu email kullanılıyor.')
return redirect('/')
else:
user = User.objects.create_user(username=username, email=email, password=password)
user.save()
return redirect('/')
else:
return render(request, 'blog/SignPage.html')
elif request.POST.get('submit') == 'Oturum Aç':
username= request.POST.get('username')
password= request.POST.get('password')
user= auth.authenticate(username=username,password=password)
if user is not None:
auth.signin(request,user)
redirect('/anasayfa')
else :
messages.info(request,'Yanlış kullanıcı adı veya şifre')
return redirect('/')
else:
return render(request, 'blog/SignPage.html')
Also my urls.py is,
urlpatterns = [
path('', views.index, name='kaydol'),
]
Edit: I add my imports.