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 相关文章推荐
C#返回当前系统所有可用驱动器符号的方法
Apr 18 Python
Python如何实现守护进程的方法示例
Feb 08 Python
Python部署web开发程序的几种方法
May 05 Python
Python scikit-learn 做线性回归的示例代码
Nov 01 Python
python获取中文字符串长度的方法
Nov 14 Python
Python argparse模块使用方法解析
Feb 20 Python
使用Python实现将多表分批次从数据库导出到Excel
May 15 Python
python用Tkinter做自己的中文代码编辑器
Sep 07 Python
Python基于Serializer实现字段验证及序列化
Nov 04 Python
python3中确保枚举值代码分析
Dec 02 Python
python爬虫--selenium模块
Mar 31 Python
Python如何识别银行卡卡号?
Jun 10 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开发中常用的三个表单验证函数使用小结
2010/03/03 PHP
PHP 强制下载文件代码
2010/10/24 PHP
js cookies 常见网页木马挂马代码 24小时只加载一次
2009/04/13 Javascript
jQuery中读取json文件示例代码
2013/05/10 Javascript
Extjs4 类的定义和扩展实例
2013/06/28 Javascript
jquery二级导航内容均分的原理及实现
2013/08/13 Javascript
JS动态调用方法名示例介绍
2013/12/18 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
深入理解JavaScript系列(19):求值策略(Evaluation strategy)详解
2015/03/05 Javascript
微信小程序 开发MAP(地图)实例详解
2017/06/27 Javascript
微信小程序分页加载的实例代码
2017/07/11 Javascript
使用Node.js搭建静态资源服务详细教程
2017/08/02 Javascript
React生命周期原理与用法踩坑笔记
2020/04/28 Javascript
在vue-cli3.0 中使用预处理器 (Sass/Less/Stylus) 配置全局变量操作
2020/08/10 Javascript
[01:51]DAC趣味视频-如何成为职业选手.mp4
2017/04/02 DOTA
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
python操作MySQL数据库的方法分享
2012/05/29 Python
django使用html模板减少代码代码解析
2017/12/12 Python
Python发展史及网络爬虫
2019/06/19 Python
python实现简易学生信息管理系统
2020/04/05 Python
使用Python完成15位18位身份证的互转功能
2019/11/06 Python
Python %r和%s区别代码实例解析
2020/04/03 Python
安装并免费使用Pycharm专业版(学生/教师)
2020/09/24 Python
html5 canvas简单封装一个echarts实现不了的饼图
2018/06/12 HTML / CSS
美国眼镜网站:EyeBuyDirect
2017/04/13 全球购物
巴西宠物店在线:Geração Pet
2017/05/31 全球购物
Sperry澳大利亚官网:源自美国帆船鞋创始品牌
2019/07/29 全球购物
男女钓鱼靴和甲板鞋:XTRATUF
2021/01/09 全球购物
信息系统专业个人求职信范文
2013/12/07 职场文书
男女朋友协议书
2014/04/23 职场文书
个人学习党的群众路线教育实践活动心得体会
2014/11/05 职场文书
2014年电厂工作总结
2014/12/04 职场文书
宇宙与人观后感
2015/06/05 职场文书
承诺书应该怎么写?
2019/09/10 职场文书
导游词之襄阳古城
2019/09/27 职场文书
css如何把元素固定在容器底部的四种方式
2022/06/16 HTML / CSS