views.py 1.2 KB

12345678910111213141516171819202122232425262728
  1. from django.shortcuts import render, redirect
  2. from .form import UserLoginForm, UserRegisterForm
  3. from django.contrib.auth import authenticate, login
  4. from django.http import HttpResponse
  5. def user_login(request):
  6. if request.method == 'POST':
  7. user_login_form = UserLoginForm(request.POST)
  8. if user_login_form.is_valid():
  9. # 清洗出合法的数据
  10. data = user_login_form.cleaned_data
  11. # 检测账号密码是否匹配数据库中的一个用户
  12. # 如果均匹配,则返回此User对象
  13. user = authenticate(username=data['username'], password=data['password'])
  14. if user:
  15. login(request, user)
  16. return redirect("chat:index")
  17. else:
  18. return HttpResponse("账号或密码输入不正确,请重新输入")
  19. else:
  20. return HttpResponse("输入不合法,请重新输入")
  21. elif request.method == 'GET':
  22. user_login_form = UserLoginForm()
  23. context = {'form': user_login_form}
  24. return render(request, 'login.html', context)
  25. else:
  26. return HttpResponse("请使用GET或者POST请求数据")