from django.shortcuts import render, redirect from .form import UserLoginForm, UserRegisterForm from django.contrib.auth import authenticate, login from django.http import HttpResponse def user_login(request): if request.method == 'POST': user_login_form = UserLoginForm(request.POST) if user_login_form.is_valid(): # 清洗出合法的数据 data = user_login_form.cleaned_data # 检测账号密码是否匹配数据库中的一个用户 # 如果均匹配,则返回此User对象 user = authenticate(username=data['username'], password=data['password']) if user: login(request, user) return redirect("chat:index") else: return HttpResponse("账号或密码输入不正确,请重新输入") else: return HttpResponse("输入不合法,请重新输入") elif request.method == 'GET': user_login_form = UserLoginForm() context = {'form': user_login_form} return render(request, 'login.html', context) else: return HttpResponse("请使用GET或者POST请求数据")