首页 > 其他 > 详细

Django实现验证码

时间:2019-06-09 21:06:43      阅读:92      评论:0      收藏:0      [点我收藏+]

Django-simple-captcha模快

1.下载安装:

  window命令行输入:pip install django-simple-captcha  ;   pip install pillow

2.添加captcha:在setting中找到app再添加。

INSTALLED_APPS = [
    django.contrib.admin,
    django.contrib.auth,
    django.contrib.contenttypes,
    django.contrib.sessions,
    django.contrib.messages,
    django.contrib.staticfiles,
    app01.apps.App01Config,
    ‘captcha‘,
]

# 执行命令进行数据迁徙,会发现数据库中多了一个 captcha_captchastore 的数据表 python manage.py migrate

 

3.添加路由:在urls.py中添加对应的路由。

from django.contrib import admin
from django.urls import path, include
from app01 import views

urlpatterns = [
    path(admin/, admin.site.urls),
    path(captcha, include(captcha.urls)),
    path(home/, views.home)
]

 

4.添加form表单:在app目录下创建forms.py。

from django import forms
from captcha.fields import CaptchaField


class UserForm(forms.Form):
    username = forms.CharField(
        label=用户名,                # 在表单里表现为 label 标签
        max_length=128,
        widget=forms.TextInput(attrs={class: form-control})   # 添加 css 属性
    )

    captcha = CaptchaField(
        label=验证码,
        required=True,
        error_messages={
            required: 验证码不能为空
        }
    )

 5.视图函数:在view.py中完成home函数。

from django.shortcuts import render

# Create your views here.
from app01.forms import UserForm


def home(request):
    register_form = UserForm(request.POST)
    if register_form.is_valid():
        pass
    register_form = UserForm()
    return render(request, index.html, {register_form: register_form})

 

 6.前端渲染:在templates目录下创建index.html。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<form action="#" method="post">
    {{ register_form.captcha.label_tag }}
    {{ register_form.captcha }}
</form>

</body>
</html>

 

7. 运行结果:python manage.py runserver

技术分享图片

 参考自:https://www.cnblogs.com/midworld/p/10992019.html

Django实现验证码

原文:https://www.cnblogs.com/lal666/p/10994499.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!