VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > python入门教程 >
  • python3 之 天天生鲜 项目(初学者)4

登录验证authenticate    及 登录login  、session状态保持、 退出logout

复制代码
class LoginView(View):
    def get(self,request):
        return render(request,'login.html')
    def post(self,request):
        data = request.POST
        username = data.get("username")
        password = data.get("pwd")
        remembered = data.get("remembered")
        if not all([username,password]):
            return render(request,'login.html',{'error':'请输入正确的账号或密码'})

     #验证用户和密码
        user = authenticate(username=username,password=password)
        if not user:
            return render(request, 'login.html', {'error': '请输入正确的账号或密码'})

        #是否激活
        if user.is_active == False:
            return render(request, 'login.html', {'error': '邮箱未激活'})
    
     #登录
        login(request,user)

        #记住用户名     session存储位置 mysql--...-- django_session里
        if remembered != 'on':
            request.session.set_expiry(0)
        else:
            request.session.set_expiry(3600*24)

        response = redirect('/goods/index')
        return response
复制代码
#退出登陆 清空session
class LogoutUser(View):
    def get(self,request):
        logout(request)
        return redirect('/goods/index')
#状态保持  设置为0时  关闭浏览器就会退出登录  但不清空session   退出则清空
        if remembered != 'on':
            request.session.set_expiry(0)

else:
 request.session.set_expiry(3600*24)

 

logout退出后    清空当前用户的状态


 

出处:https://www.cnblogs.com/Py-beginner/p/13860732.html


相关教程