经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Django » 查看文章
Django框架封装外部函数示例
来源:jb51  时间:2019/5/28 10:29:22  对本文有异议

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

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

1.构建登录表单

  1. <form method="post">
  2. <p>用户名:<input type="text" name="username"></p>
  3. <p>密码:<input type="password" name="pwd"></p>
  4. <p><input type="submit" value="提交"></p>
  5. <hr>
  6. </form>
  7. <p>
  8. 登录状态提示:{{ result }}
  9. </p>
  10.  

2.程序判断

  1. #coding:utf-8
  2. from django.shortcuts import render,render_to_response
  3. # Create your views here.
  4. from django.http import HttpResponse
  5. def hi(request):
  6. msg = {'result':''}
  7. if userLogin(request.POST.get('username'),request.POST.get('pwd')):
  8. msg['result'] = '登录成功'
  9. else:
  10. msg['result'] = '登录失败'
  11. return render_to_response("index.html",msg)
  12. #判断用户登录函数
  13. def userLogin(username,pwd):
  14. if username == 'jack' and pwd == '123':
  15. return True
  16. else:
  17. return False
  18.  

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

3.一个小意外

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

这里写图片描述

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

这里写图片描述

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

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

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

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

这里写图片描述

然后在views.py里

先引入

  1. import user
  2.  

使用

  1. user.userLogin()
  2.  

完整的views.py代码如下:

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

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

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号