Django框架实现的普通登录案例【使用POST方法】


Posted in Python onMay 15, 2019

本文实例讲述了Django框架实现的普通登录。分享给大家供大家参考,具体如下:

1.显示登录页面

a.设计url,通过浏览器访问http://127.0.0.1:8000//login的时候现实登录页面
b.设计url对应的视图函数
c.编写模板文件login.html

2.登录校验功能

校验数据库中有没有这个用户,这里用模拟的伪校验

新建login.html

在templates文件夹下的booktest文件夹下新建

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
POST:提交的参数在请求头里,数据比较重要用post
GET:提交的参数在url中
用post方法提交到login_check页面中
<form method="post" action="/login_check">
  用户名:<input type="text" name="username">
  密码:<input type="password" name="password">
  <input type="submit" value="登录">
</form>
</body>
</html>

注意这里表单的提交方法选择post方法,action配置如上

配置urls.py

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

views.py写视图函数login()login_check()

login函数直接现实登录页面,login_check函数用request.POST.get()函数接受浏览器传递过来的参数

def login(request):
  '''显示登录页面'''
  return render(request, 'booktest/login.html')
def login_check(request):
  '''登录校验视图'''
  # 浏览器提交的信息就保存在request里面
  # request.POST保存的是POST提交的参数
  # request.GET保存的是GET提交的参数
  # 1.获取提交的用户名和密码
  username = request.POST.get('username')
  passwoed = request.POST.get('password')
  # 2.进行登录校验
  # 实际开发的时候,用户名和密码保存在数据库中
  # 模拟
  if username == 'zhangyue' and passwoed == '123456':
     # 正确,跳转到首页index
    return redirect('/index')
  else:
     # 错误
    return redirect('/login')
  # 3.返回应答

发生Forbidden (403)错误

Django框架实现的普通登录案例【使用POST方法】

去项目的setting.py里注释掉

'django.middleware.csrf.CsrfViewMiddleware',

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
用Python实现QQ游戏大家来找茬辅助工具
Sep 14 Python
使用graphics.py实现2048小游戏
Mar 10 Python
举例讲解Python设计模式编程的代理模式与抽象工厂模式
Jan 16 Python
python 打印直角三角形,等边三角形,菱形,正方形的代码
Nov 21 Python
pytorch 把MNIST数据集转换成图片和txt的方法
May 20 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
Aug 10 Python
Python数据类型之Dict字典实例详解
May 07 Python
Django框架使用内置方法实现登录功能详解
Jun 12 Python
Python全面分析系统的时域特性和频率域特性
Feb 26 Python
Python爬虫headers处理及网络超时问题解决方案
Jun 19 Python
Python 使用Opencv实现目标检测与识别的示例代码
Sep 08 Python
python使用dlib进行人脸检测和关键点的示例
Dec 05 Python
Django框架使用mysql视图操作示例
May 15 #Python
scrapy-redis源码分析之发送POST请求详解
May 15 #Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
May 15 #Python
使用Python做定时任务及时了解互联网动态
May 15 #Python
Python使用统计函数绘制简单图形实例代码
May 15 #Python
详解Python3 对象组合zip()和回退方式*zip
May 15 #Python
python语言元素知识点详解
May 15 #Python
You might like
php图片的二进制转换实现方法
2014/12/15 PHP
thinkphp3.x中变量的获取和过滤方法详解
2016/05/20 PHP
PHP7匿名类用法分析
2016/09/26 PHP
让iframe自适应高度(支持XHTML,支持FF)
2007/07/24 Javascript
JavaScript的模块化:封装(闭包),继承(原型) 介绍
2013/07/22 Javascript
angularJS中$apply()方法详解
2015/01/07 Javascript
iframe里使用JavaScript控制主页转向的方法
2015/04/03 Javascript
jQuery仿gmail实现fixed布局的方法
2015/05/27 Javascript
js HTML5 Ajax实现文件上传进度条功能
2016/02/13 Javascript
JS闭包可被利用的常见场景小结
2017/04/09 Javascript
angular bootstrap timepicker TypeError提示怎么办
2017/06/13 Javascript
前端html中jQuery实现对文本的搜索功能并把搜索相关内容显示出来
2017/11/14 jQuery
Vue中使用clipboard实现复制功能
2018/09/05 Javascript
详解基于electron制作一个node压缩图片的桌面应用
2019/01/29 Javascript
重学JS 系列:聊聊继承(推荐)
2019/04/11 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
Vue快速实现通用表单验证的示例代码
2020/01/09 Javascript
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
2020/02/19 Javascript
微信小程序实现搜索功能
2020/03/10 Javascript
跟老齐学Python之??碌某?? target=
2014/09/12 Python
Python中如何获取类属性的列表
2016/12/26 Python
Python利用Beautiful Soup模块创建对象详解
2017/03/27 Python
JPype实现在python中调用JAVA的实例
2017/07/19 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
2019/02/22 Python
Python使用MyQR制作专属动态彩色二维码功能
2019/06/04 Python
Django 过滤器汇总及自定义过滤器使用详解
2019/07/19 Python
Python类如何定义私有变量
2020/02/03 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
详解python对象之间的交互
2020/09/29 Python
彪马土耳其官网:PUMA土耳其
2019/07/14 全球购物
单位绩效考核方案
2014/05/11 职场文书
食品工程专业求职信
2014/06/15 职场文书
上班迟到检讨书范文300字
2014/11/02 职场文书
党的群众路线教育实践活动个人对照检查材料(企业)
2014/11/05 职场文书
升学宴学生致辞
2015/09/29 职场文书
Java实现斗地主之洗牌发牌
2021/06/14 Java/Android