zoukankan      html  css  js  c++  java
  • 为窗体添加防机器人的验证机制

    安装对应的模块

    pip install django-simple-captcha
    

    在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
    

    附上运行结果

  • 相关阅读:
    重力感应GSensor 方向介绍
    php图片保存、下载
    AJAX技术在PHP开发中的简单应用
    php 面向对象基础
    用PHP处理多个同名复选框
    去掉codeigniter地址中的index.php
    PHP中如何运用ini_set和ini_get()
    Windows 7下PHP配置环境
    zend_application 说明
    PHP写的域名查询系统whois
  • 原文地址:https://www.cnblogs.com/guguobao/p/9323711.html
Copyright © 2011-2022 走看看