from django.shortcuts import render,HttpResponse,redirectfrom django.contrib import auth# Create your views here.#登录def login(request): if request.method=='POST': username = request.POST.get('username') password = request.POST.get('password') user_obj= auth.authenticate(request,username=username,password=password) """ 1.自动查找auth_user表 2.自动给密码加密后再比对 """ if user_obj: #保存用户状态 auth.login(request,user_obj) return render(request,'login.html')from django.contrib.auth.decorators import login_required# @login_required(login_url='/login/')#装饰器,登陆后才能访问# 没有登录则访问login_url参数后的页面(局部配置)# 全局配置:@login_required# 在settings中配置LOGIN_USER='/login/'# 配置了以后不需要login_url参数def home(request): return HttpResponse('home')#修改密码@login_requireddef setpwd(request): if request.method == 'POST': oldpassword = request.POST.get('oldpassword') newpassword = request.POST.get('newpassword') confirm_newpassword = request.POST.get('confirm_newpassword') #校验新密码是否一致 if newpassword == confirm_newpassword: #校验老密码是否正确 ans = request.user.check_password(oldpassword) #自动加密比对密码 if ans: #修改密码(仅修改对象属性) request.user.set_password(newpassword) #修改内容作用于数据库 request.user.save() return render(request,'setpwd.html',locals())#注销@login_requireddef logout(request): auth.logout(request) return render(request,'login.html')from django.contrib.auth.models import Userdef register(request): if request.method=='POST': username = request.POST.get('username') password = request.POST.get('password') # User.objects.create(username=username,password=password) #创建普通用户 User.objects.create_user(username=username,password=password) return render(request,'register.html')