Django框架封装外部函数示例


Posted in Python onMay 28, 2019

本文实例讲述了Django框架封装外部函数。分享给大家供大家参考,具体如下:

需求:我们来模拟用户登录,验证是否输入正确的用户名和密码

1.构建登录表单

<form method="post">
    <p>用户名:<input type="text" name="username"></p>
    <p>密码:<input type="password" name="pwd"></p>
    <p><input type="submit" value="提交"></p>
    <hr>
  </form>
  <p>
    登录状态提示:{{ result }}
  </p>

2.程序判断

#coding:utf-8
from django.shortcuts import render,render_to_response
# Create your views here.
from django.http import HttpResponse
def hi(request):
  msg = {'result':''}
  if userLogin(request.POST.get('username'),request.POST.get('pwd')):
    msg['result'] = '登录成功'
  else:
    msg['result'] = '登录失败'
  return render_to_response("index.html",msg)
#判断用户登录函数
def userLogin(username,pwd):
  if username == 'jack' and pwd == '123':
    return True
  else:
    return False

验证如果输入的用户名为jack,密码为123,就提示“登录成功”

3.一个小意外

如果你提交上面的表单,会报如下错误,这个是Django框架的验证机制

Django框架封装外部函数示例

这是为了防止跨域攻击,我们这里暂时不研究这个安全机制,来到settings.py文件注释掉下面这行

Django框架封装外部函数示例

这样就不会报上面的那个错误了。

如果用户输正确的用户名和密码(jack、123),模板上{{ result }} 就是提示“登录成功”。

4.如何把userLogin函数写到外部?

在views.py文件同级下新建user.py文件

Django框架封装外部函数示例

然后在views.py里

先引入

import user

使用

user.userLogin()

完整的views.py代码如下:

#coding:utf-8
from django.shortcuts import render,render_to_response
# Create your views here.
from django.http import HttpResponse
import user
def hi(request):
  msg = {'result':''}
  if user.userLogin(request.POST.get('username'),request.POST.get('pwd')):
    msg['result'] = '登录成功'
  else:
    msg['result'] = '登录失败'
  return render_to_response("index.html",msg)

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

Python 相关文章推荐
Python 错误和异常小结
Oct 09 Python
python翻译软件实现代码(使用google api完成)
Nov 26 Python
使用Python保存网页上的图片或者保存页面为截图
Mar 05 Python
KMP算法精解及其Python版的代码示例
Jun 01 Python
python的paramiko模块实现远程控制和传输示例
Oct 13 Python
python正则表达式面试题解答
Apr 28 Python
Python操作mongodb数据库进行模糊查询操作示例
Jun 09 Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
Aug 03 Python
OpenCV HSV颜色识别及HSV基本颜色分量范围
Mar 22 Python
Scrapy-Redis结合POST请求获取数据的方法示例
May 07 Python
Python中的类与类型示例详解
Jul 10 Python
Python使用ElementTree美化XML格式的操作
Mar 06 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
May 27 #Python
python利用多种方式来统计词频(单词个数)
May 27 #Python
numpy中的ndarray方法和属性详解
May 27 #Python
numpy.linspace函数具体使用详解
May 27 #Python
Django利用cookie保存用户登录信息的简单实现方法
May 27 #Python
Django框架设置cookies与获取cookies操作详解
May 27 #Python
numpy下的flatten()函数用法详解
May 27 #Python
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(二)
2014/06/23 PHP
ThinkPHP中关联查询实例
2014/12/02 PHP
thinkPHP5.0框架引入Traits功能实例分析
2017/03/18 PHP
msn上的tab功能Firefox对childNodes处理的一个BUG
2008/01/21 Javascript
javascript字符串替换及字符串分割示例代码
2013/12/12 Javascript
js检测输入内容全为空格的方法
2014/05/03 Javascript
jQuery中:checked选择器用法实例
2015/01/04 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
跨域资源共享 CORS 详解
2016/04/26 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
jQuery Checkbox 全选 反选的简单实例
2016/11/29 Javascript
input输入密码变黑点密文的实现方法
2017/01/09 Javascript
Vue 表单控件绑定的实现示例
2017/08/11 Javascript
node.js express框架实现文件上传与下载功能实例详解
2019/10/15 Javascript
js实现鼠标点击飘爱心效果
2020/08/19 Javascript
vue实现折线图 可按时间查询
2020/08/21 Javascript
详解Vue3.0 + TypeScript + Vite初体验
2021/02/22 Vue.js
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
Python中的自省(反射)详解
2015/06/02 Python
对Python字符串中的换行符和制表符介绍
2018/05/03 Python
python安装twisted的问题解析
2018/08/21 Python
python3 实现验证码图片切割的方法
2018/12/07 Python
python读取几个G的csv文件方法
2019/01/07 Python
python区块及区块链的开发详解
2019/07/03 Python
基于Python新建用户并产生随机密码过程解析
2019/10/08 Python
英国婴儿及儿童产品商店:TigerParrot
2019/03/04 全球购物
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
介绍java中初始化块的使用
2012/09/11 面试题
英语专业大学生求职简历的自我评价
2013/10/18 职场文书
读书心得体会
2013/12/28 职场文书
机械制造毕业生求职信
2014/03/03 职场文书
2014年精神文明建设工作总结
2014/11/19 职场文书
安全知识竞赛主持词
2015/06/30 职场文书
餐厅开业活动方案
2019/07/08 职场文书
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python
用 Python 定义 Schema 并生成 Parquet 文件详情
2021/09/25 Python