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之yield表达式学习
Sep 02 Python
在Python中使用__slots__方法的详细教程
Apr 28 Python
Python3中详解fabfile的编写
Jun 24 Python
python使用tornado实现登录和登出
Jul 28 Python
python实现自动获取IP并发送到邮箱
Dec 26 Python
selenium跳过webdriver检测并模拟登录淘宝
Jun 12 Python
django框架auth模块用法实例详解
Dec 10 Python
matplotlib 曲线图 和 折线图 plt.plot()实例
Apr 17 Python
关于python tushare Tkinter构建的简单股票可视化查询系统(Beta v0.13)
Oct 19 Python
Python如何使用神经网络进行简单文本分类
Feb 25 Python
python通配符之glob模块的使用详解
Apr 24 Python
python基于tkinter制作m3u8视频下载工具
Apr 24 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语法(3)
2006/10/09 PHP
PHP可变变量学习小结
2015/11/29 PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
2016/09/11 PHP
从javascript语言本身谈项目实战
2006/12/27 Javascript
我见过最全的个人js加解密功能页面
2007/12/12 Javascript
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
什么是json和jsonp,jQuery json实例详详细说明
2012/12/11 Javascript
JavaScript 在网页上单击鼠标的地方显示层及关闭层
2012/12/30 Javascript
Jquery实现弹出层分享微博插件具备动画效果
2013/04/03 Javascript
在HTML代码中使用JavaScript代码的例子
2014/10/16 Javascript
JavaScript模板引擎用法实例
2015/07/10 Javascript
详解JS几种变量交换方式以及性能分析对比
2016/11/25 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
js提取中文拼音首字母的封装工具类
2018/03/12 Javascript
vue router 跳转后回到顶部的实例
2018/08/31 Javascript
AngularJS修改model值时,显示内容不变的实例
2018/09/13 Javascript
发布Angular应用至生产环境的方法
2018/12/10 Javascript
最简单的JS实现json转csv的方法
2019/01/10 Javascript
详解Vue调用手机相机和相册以及上传
2019/05/05 Javascript
[17:45]DOTA2 HEROES教学视频教你分分钟做大人-军团指挥官
2014/06/11 DOTA
Python中map和列表推导效率比较实例分析
2015/06/17 Python
Python下的Softmax回归函数的实现方法(推荐)
2017/01/26 Python
浅析python中SQLAlchemy排序的一个坑
2017/02/24 Python
3个用于数据科学的顶级Python库
2018/09/29 Python
浅谈python的深浅拷贝以及fromkeys的用法
2019/03/08 Python
Python2与Python3的区别实例总结
2019/04/17 Python
Python 依赖库太多了该如何管理
2019/11/08 Python
Python函数的迭代器与生成器的示例代码
2020/06/18 Python
自我鉴定范文
2013/11/10 职场文书
就业推荐表自我鉴定范文
2014/03/21 职场文书
机械系毕业生求职信
2014/05/28 职场文书
社保代办委托书怎么写
2014/10/06 职场文书
2014年检验科工作总结
2014/11/22 职场文书
奖励申请报告范文
2015/05/15 职场文书
关于感恩的作文
2019/08/26 职场文书
Mybatis-plus配置分页插件返回统一结果集
2022/06/21 Java/Android