django写用户登录判定并跳转制定页面的实例


Posted in Python onAugust 21, 2019

1. 首先看要设置登陆的界面 book/view.py

@user_util.my_login #相当于 select_all=my_login(select_all)
def select_all(request):
 # 查询所有的书
 book_list = BookInfo.objects.all()
 # 返回
 return render(request, 'book/book_list.html', {'book_list': book_list})


@user_util.my_login #相当于 select_by_id=my_login(select_by_id)
def select_by_id(request,book_id):
 bookinfo=BookInfo.objects.get(id=book_id)
 return render(request,'book/book_detail.html',{'bookinfo':bookinfo})

@user_util.my_login 是在utils/user_utils.py里面写的装饰器

使用session判定是否登录:login_user_id = args[0].session.get(‘login_user_id')

#登陆用的装饰器

def my_login(func):
 def inner(*args,**kwargs):
  login_user_id = args[0].session.get('login_user_id')
  if login_user_id:
   return func(*args,**kwargs)
  else:
   return redirect(reverse('user:login'))
 return inner

2. 设置登录模块的界面

设置session键值对进行存储: request.session[‘login_user_id']=user[0].id

def login(request):
 #获取cookie
 remember_user_name=request.COOKIES.get('remember_user_name','')
 return render(request, "user/login.html",{'remember_user_name':remember_user_name})


def login_handler(request):
 # 判断请求方式
 if request.method == "GET":
  request_info = request.GET
 else:
  request_info = request.POST

 # 获取属性
 user_name = request_info.get("user_name",'').strip()
 user_pwd = request_info.get("user_pwd",'').strip()
 remember = request_info.get("remember")
 user_pwd = my_md5(user_pwd)
 user=User.objects.filter(name=user_name, pwd=user_pwd)
 #print(user[0].id)

 # 查询
 if len(user) != 0:
  #将登陆信息保存到session
  request.session['login_user_id']=user[0].id
  resp=HttpResponseRedirect(reverse("book:index"))
  #记住用户名
  if remember=='1':
   resp.set_cookie('remember_user_name',user_name,3600*24*7)
  else:
   resp.set_cookie('remember_user_name',user_name,0)
  return resp


  # 转发
  #return book_views.index(request)
  # 重定向
  #return HttpResponseRedirect(reverse("book:index"))

 else:

  return HttpResponseRedirect(reverse("user:login"))

以上这篇django写用户登录判定并跳转制定页面的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 判断自定义对象类型
Mar 21 Python
在Python中使用M2Crypto模块实现AES加密的教程
Apr 08 Python
Python教程之全局变量用法
Jun 27 Python
Python2随机数列生成器简单实例
Sep 04 Python
python实现人民币大写转换
Jun 20 Python
Python OpenCV读取png图像转成jpg图像存储的方法
Oct 28 Python
python绘制直方图和密度图的实例
Jul 08 Python
django 类视图的使用方法详解
Jul 24 Python
python防止随意修改类属性的实现方法
Aug 21 Python
python中yield的用法详解
Jan 13 Python
Python使用mitmproxy工具监控手机 下载手机小视频
Apr 18 Python
如何利用python实现Simhash算法
Jun 28 Python
Django自定义模板过滤器和标签的实现方法
Aug 21 #Python
扩展Django admin的list_filter()可使用范围方法
Aug 21 #Python
python机器学习包mlxtend的安装和配置详解
Aug 21 #Python
python 画出使用分类器得到的决策边界
Aug 21 #Python
Django url,从一个页面调到另个页面的方法
Aug 21 #Python
python requests更换代理适用于IP频率限制的方法
Aug 21 #Python
docker django无法访问redis容器的解决方法
Aug 21 #Python
You might like
PHP 提取图片img标记中的任意属性的简单实例
2013/12/10 PHP
PHP浮点比较大小的方法
2016/02/14 PHP
php-fpm服务启动脚本的方法
2018/04/27 PHP
PHP架构及原理知识点详解
2019/12/22 PHP
JavaScript入门教程(7) History历史对象
2009/01/31 Javascript
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
js监听输入框值的即时变化onpropertychange、oninput
2011/07/13 Javascript
表单切换,用回车键替换Tab健(不支持IE)
2011/07/20 Javascript
window.open不被拦截的实现代码
2012/08/22 Javascript
IE8对JS通过属性和数组遍历解析不一样的地方探讨
2013/05/06 Javascript
JavaScript访问CSS属性的几种方式介绍
2014/07/21 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
JS实现仿新浪黄色经典滑动门效果代码
2015/09/27 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
react-native组件中NavigatorIOS和ListView结合使用的方法
2017/09/30 Javascript
Angular4学习教程之HTML属性绑定的方法
2018/01/04 Javascript
浅谈React + Webpack 构建打包优化
2018/01/23 Javascript
微信小程序url传参写变量的方法
2018/08/09 Javascript
解决VUE中document.body.scrollTop为0的问题
2018/09/15 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
详谈Python基础之内置函数和递归
2017/06/21 Python
python实现微信发送邮件关闭电脑功能
2018/02/22 Python
详解Django+Uwsgi+Nginx的生产环境部署
2018/06/25 Python
Sanic框架Cookies操作示例
2018/07/17 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
python word转pdf代码实例
2019/08/16 Python
监理资料员岗位职责
2014/01/03 职场文书
运动会开幕式主持词
2014/03/28 职场文书
户外活动总结范文
2014/04/30 职场文书
学用政策心得体会
2014/09/10 职场文书
校园安全主题班会
2015/08/12 职场文书
医院病假条范文
2015/08/17 职场文书
2016年全国爱牙日宣传活动总结
2016/04/05 职场文书
家电创业计划书
2019/08/05 职场文书