为窗体添加防机器人的验证机制

本文详细介绍了如何在Django项目中安装并配置captcha模块来实现验证码功能,包括环境准备、模块安装、设置及表单集成等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装对应的模块

pip install django-simple-captcha

1252747-20180717152733035-1361200422.png

在setting,py中添加以下语句

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'oneapp01',
    'captcha',#防伪机制包

)

在urls添加:

from django.conf.urls import include, url
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url('^',include('oneapp01.urls')),
    url('^captcha/',include('captcha.urls')),
]

确定是否装了Pillow,用pip list, 没有就pip install Pillow

以上步骤ok,就可以在窗口类forms.py或者model.py添加CaptchaField

from django.db import models
from django import forms
from captcha.fields import CaptchaField
class PostForm(forms.ModelForm):
    captcha = CaptchaField()#防伪机制添加
    class Meta:
        model= Post#用于指定用哪个model
        fields= ['mood','nickname','message','del_pass']#用于指定用model中哪些变量

    def __init__(self, *args, **kwarge):
        super(PostForm, self).__init__(*args, **kwarge)
        self.fields['mood'].label = '现在的心情'
        self.fields['nickname'].label = '你的昵称'
        self.fields['message'].label = '你的消息'
        self.fields['del_pass'].label = '设置密码'
        self.fields['captcha'].label = '确定你不是机器人' #防伪机制添加

最后执行:

python manage.py makemigrations
python manage.py migrate

附上运行结果

1252747-20180717154328902-1958633404.png

转载于:https://www.cnblogs.com/guguobao/p/9323711.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值