Django为窗体加上防机器人的验证码功能过程解析


Posted in Python onAugust 14, 2019

这里我们使用 django-simple-captcha 模块,官方介绍如下:https://github.com/mbi/django-simple-captcha

一键安装:

pip install django-simple-captcha

在 setting.py 中把 'captcha' 加到 INSTALLED_APP 的区块中

INSTALLED_APPS = (
  # ...
  'captcha',
  # ... 
)

由于此模块会到数据库建立自己的数据表,因此要先执行数据库的 migrate 操作:

python manage.py migrate

在 urls.py 中加上这个模块对应的网址:

from django.urls import path, re_path, include
urlpatterns = [
  #...
  url(r'^captcha/', include('captcha.urls'),
  # ...
]

在窗体类中加上 CaptchaField 字段 :

from captcha.fields import CaptchaField
class PostForm(forms.ModelForm):
  captcha = CaptchaField() #CaptchaField 字段
  class Meta:
    model = models.Post
    fields = ['mood', 'nickname', 'message', 'del_pass']

  def __init__(self, *args, **kwargs):
    super(PostForm, self).__init__(*args, **kwargs)
    self.fields['mood'].label = '现在的心情'
    self.fields['nickname'].label = '您的昵称'
    self.fields['message'].label = '心情留言'
    self.fields['del_pass'].label = '设置密码'
    self.fields['captcha'].label = '请输入验证码'

运行结果如下:

Django为窗体加上防机器人的验证码功能过程解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中apply函数的用法实例教程
Jul 31 Python
python 时间戳与格式化时间的转化实现代码
Mar 23 Python
浅谈python中列表、字符串、字典的常用操作
Sep 19 Python
Python 内置函数memoryview(obj)的具体用法
Nov 23 Python
Python面向对象程序设计之类的定义与继承简单示例
Mar 18 Python
python3中的eval和exec的区别与联系
Oct 10 Python
python OpenCV GrabCut使用实例解析
Nov 11 Python
Python监控服务器实用工具psutil使用解析
Dec 19 Python
python读取图片的几种方式及图像宽和高的存储顺序
Feb 11 Python
无惧面试,带你搞懂python 装饰器
Aug 17 Python
Python eval函数原理及用法解析
Nov 14 Python
Python修改DBF文件指定列
Dec 19 Python
Python 利用高德地图api实现经纬度与地址的批量转换
Aug 14 #Python
Django如何使用第三方服务发送电子邮件
Aug 14 #Python
Python3 chardet模块查看编码格式的例子
Aug 14 #Python
Python 从subprocess运行的子进程中实时获取输出的例子
Aug 14 #Python
python3调用windows dos命令的例子
Aug 14 #Python
python脚本执行CMD命令并返回结果的例子
Aug 14 #Python
用Python调用win命令行提高工作效率的实例
Aug 14 #Python
You might like
php&java(三)
2006/10/09 PHP
PHP执行linux系统命令的常用函数使用说明
2010/04/27 PHP
php 5.4 全新的代码复用Trait详解
2017/01/05 PHP
实例说明js脚本语言和php脚本语言的区别
2019/04/04 PHP
javascript数组的扩展实现代码集合
2008/06/01 Javascript
javascript 语法基础 想学习js的朋友可以看看
2009/12/16 Javascript
jQuery结合Json提交数据到Webservice,并接收从Webservice返回的Json数据
2011/02/18 Javascript
javascript中的window.location.search方法简介
2013/09/02 Javascript
js获取ajax返回值代码
2014/04/30 Javascript
jquery简单实现外部链接用新窗口打开的方法
2015/05/30 Javascript
jquery实现点击弹出带标题栏的弹出层(从右上角飞入)效果
2015/09/19 Javascript
跟我学习javascript的隐式强制转换
2015/11/16 Javascript
JavaScript DOM 学习总结(五)
2015/11/24 Javascript
javascirpt实现2个iframe之间传值的方法
2016/06/30 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
JS 插件dropload下拉刷新、上拉加载使用小结
2017/04/13 Javascript
Express使用html模板的详细代码
2017/09/18 Javascript
axios实现文件上传并获取进度
2020/03/25 Javascript
vue3修改link标签默认icon无效问题详解
2019/10/09 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
2020/03/31 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
[42:23]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第二场 12.10
2020/12/13 DOTA
python解析模块(ConfigParser)使用方法
2013/12/10 Python
Python实现的多进程和多线程功能示例
2018/05/29 Python
Python线性拟合实现函数与用法示例
2018/12/13 Python
使用Python的SymPy库解决数学运算问题的方法
2019/03/27 Python
keras导入weights方式
2020/06/12 Python
python中四舍五入的正确打开方式
2021/01/18 Python
金宝贝童装官网:Gymboree
2016/08/31 全球购物
美国Lolё官网:购买大胆而美丽的女性运动服装
2017/05/22 全球购物
圣彼得堡鲜花配送:Semicvetic
2020/09/15 全球购物
毕业生物理教师求职信
2013/10/17 职场文书
安踏广告词改编版
2014/03/21 职场文书
法学求职信
2014/06/22 职场文书
教师遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
会议欢迎词
2015/01/23 职场文书