django中偏向于使用类的方法进行功能的实现
users/views.py
#引入基础类View from django.views.generic.base import View
#创建登陆类 class LoginView(View): def get(self,request):#重写get方法 return render(request, 'login.html') def post(self,request):#重写post方法 user_name = request.POST.get("username", '') pass_word = request.POST.get("password", '') # authenticate方法用来验证用户的账号密码是否正确,如果正确,返回User对象,否则返回None user = authenticate(username=user_name, password=pass_word) if user is not None: # 判断是否正确 login(request, user) # 登陆账户 # 重定向到index主页 return redirect(index) # 重定向到主页,切不可使用render方法,返回的是静态页面,css样式有问题。 else: return render(request, 'login.html', {'msg': "账户或密码错误"}) # 返回页面提示错误