django 记住用户名案例

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29726359/article/details/86542484

django 记住用户名案例

原理:

  • 利用cookie

前台html:

  • 代码:
<form method="post" action="/login_check">
    用户名:<input id="username" type="text" name="username" value="{{username}}"><br/>
    密码:<input id="password" type="text" name="password"><br />
    <input type="checkbox" name="remember">记住用户名<br/>
   <input type="submit" value="登陆">
</form>
  • 页面效果:

    在这里插入图片描述

后台:

  • login_check:

    def login_check(request):
        username = request.POST.get("username");
        password = request.POST.get("password");
        remember = request.POST.get('remember');
    
        if username == 'smart' and password =='123':
            # 用户名密码正确 , 跳转到登陆成功页面
            response = redirect("/index")
            #判断是否记住用户名
            if remember =="on":
                #设置cookie username *过期时间为1周
               response.set_cookie('username',username,max_age=7*24*3600)
            return response
        else:
             return redirect('/login')
    
  • login:

    def login(request):
        '''显示登陆页面'''
        # 获取cookie username
        if 'username' in request.COOKIES:
            # 获取记住的用户名
            username = request.COOKIES['username']
        else:
            username = ''
        return render(request,'bookstore/login.html',{'username': username})
    
  • hello:

    def hello(request):
     # 1.查询所有图书信息
     #books=BookInfo.objects.all()
     username= request.COOKIES['username']
     return render(request,"bookstore/index.html",{"username":username});
    
  • url配置:

     url(r'^index$',views.hello),
     url(r'^login$',views.login),
     url(r'^login_check$',views.login_check),
    

页面效果:

  • 登陆
    在这里插入图片描述

  • 点击

    在这里插入图片描述

  • 关闭浏览器再次打开

    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_29726359/article/details/86542484