繁体   English   中英

在Django中使用password_reset()重新验证

[英]reCaptcha with password_reset() in Django

urls.py:

url(r'^password/reset/$', 'django.contrib.auth.views.password_reset', {'html_email_template_name': 'email_password.html'}, 'password_reset'), 

我已阅读此内容,并查看了password_reset()的代码。

当用户想要重置密码时,我需要使用reCaptcha-在password_reset()中需要检查request.POST['g-recaptcha-response']并向Google提出请求(请求有效)。

但是我不想用Django源代码编写代码,也不想使用django-recaptcha之类的包。

如何重写password_reset()或执行其他操作来解决此问题?

谢谢!

一种方法是创建自己的视图,该视图调用密码重置视图:

from django.contrib.auth.views import password_reset

def my_password_reset(request):
    # check captcha here
    return password_reset()

password_reset方法接收的参数之一是“ password_reset_form”,这是您要用来重置密码的表单的类。 我建议不要在自定义视图上检查验证码,而应在从django.contrib.auth.forms.PasswordResetForm扩展的新自定义表单中进行检查

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM