from django.http import HttpResponse from django.contrib.auth.decorators import login_required from django.contrib.auth import authenticate, login, logout from django.shortcuts import render, redirect from django.views.decorators.csrf import csrf_exempt from django.contrib.auth.models import User from django.db import transaction @login_required() def index(request): return render(request, 'index.html') def login_view(request): if request.method == 'GET': return render(request, 'login.html') elif request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username, password=password) if user is not None: login(request, user) return redirect("index") else: return render(request, 'login.html', { 'login_failed' : True }) return redirect("index") def logout_view(request): if request.method == 'POST': logout(request) return redirect("index")