利用django-simple-captcha生成验证码

参考文档

http://django-simple-captcha.readthedocs.io/en/latest/

django支持1.7+

1.安装

pip install  django-simple-captcha

2.添加到install_apps中

3.添加以下url到urls文件中

from django.conf.urls import url,include
url(r'^captcha/', include('captcha.urls')),    #添加到url

4.生成数据库

makemigrations
migrate

5.应用配置

  1. 在forms.py中导入以下模块
from captcha.fields import CaptchaField
在下关Forms中使用
class RegisterForm(forms.Form):
    email = forms.EmailField(required=True)
    password = forms.CharField(required=True,min_length=5)
    captcha = CaptchaField(error_messages={'invalid':u'验证码错误'})
  1. 在views.py中使用forms
class RegisterView(View):
    def get(self,request):
        register_form = RegisterForm()
        return render(request,'register.html',{'register_form':register_form})
 
    def post(self,request):
        register_form = RegisterForm()
        if register_form.is_valid():
            user_name = request.POST.get("username", '')
            pass_word = request.POST.get("password", '')
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.password = make_password(pass_word)
            user_profile.save()

6.前端渲染即可

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java技术栈

Redis 高可用特性之 “持久化” 详解

在之前的文章中,介绍了《Redis的内存模型》,从这篇文章开始,将依次介绍 Redis 高可用相关的知识——持久化、复制(及读写分离)、哨兵、以及集群。

492
来自专栏运维技术迷

Veeam Backup & Replication(三):创建备份与还原备份

一、创建备份和手动备份 1.创建备份 目标:为esxi服务器上的xp test虚拟机做备份 1.1 打开Veeam软件,选择Backup & Replic...

4124
来自专栏IT技术精选文摘

精讲Redis:持久化

从这篇文章开始,将依次介绍Redis高可用相关的知识——持久化、复制(及读写分离)、哨兵、以及集群。

1073
来自专栏xingoo, 一个梦想做发明家的程序员

Linux下解压rar文件

  正常rar是windows下的压缩文件,linux是不支持的。但是可以通过安装rarlinux来使用rar命令解压rar文件。   首先下载rarlinux...

2149
来自专栏Java架构沉思录

Redis持久化方案该如何选型

这篇文章主要介绍Redis高可用相关的知识——持久化、复制(及读写分离)、哨兵、以及集群。

1202
来自专栏hbbliyong

ASP.NET 运行机制详解

1.浏览器和服务器的交互原理 通俗描述:我们平时通过浏览器来访问网站,其实就相当于你通过浏览器去访问一台电脑上访问文件一样,只不过浏览器的访问请求是由被访问的电...

2887
来自专栏一个会写诗的程序员的博客

Failure [INSTALL_FAILED_NO_MATCHING_ABIS]

这个问题出现在模拟器上的概率更大些,原因是某些应用使用了原生库(NDK,Native Lib),这些库的编译目标通常是arm架构的cpu,在x86上运行就会报这...

622
来自专栏有困难要上,没有困难创造困难也要上!

使用 nvm 管理多版本 node

3297
来自专栏性能与架构

非常小巧的HTTP压力测试工具

如果你关心的性能指标主要是 QPS 每秒处理的请求数,那么 Benchttp 非常适合你 Benchttp 是一个超轻量级的压力测试工具,安装简单、用法类似 A...

3324
来自专栏pydata

use python in windows

此网站上面有编译好了的各种python windows包. 我们首先下载libxml2-python 然后使用pip wheel安装:

1014

扫码关注云+社区