问题:
登录、注册、忘记密码时候,提交用户数据时候,需要用到用户填写验证码,如何生成验证码?
那,解决方法?
- 第三方模块 django-simple-captcha
pip install django-simple-captcha
- 把 captcha 添加到app中
INSTALLED_APPS = [
...
'captcha',
] - 写form验证时候,把这个字段添加进去
class ForgetForm(forms.Form):
email = forms.EmailField(required=True, error_messages={'required': u'邮箱不能为空'})
# 验证码验证
captcha = CaptchaField(error_messages={'invalid': u'验证码错误', 'required': u'验证码不能为空'}) - 写view时候,实例化form,把对象传递给模版
class ForgetView(View):
"""发送重置密码邮箱验证"""
def get(self, request):
forget_form = ForgetForm()
return render(request, 'forgetpwd.html', {'forget_form': forget_form}) - 写template时候,.captcha获得验证码功能,并支持点击刷新验证码
< divclass ="form-group captcha1 marb38" >
<label>验 & nbsp;证 & nbsp;码</label > {{forget_form.captcha}} </div>Githup地址:https://github.com/mbi/django-simple-captcha