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

这篇文章主要介绍了Django为窗体加上防机器人的验证码功能过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

这里我们使用 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 = '请输入验证码'

运行结果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...