Я хочу создать пользовательскую форму для сброса пароля, используя оригинальную регистрационную форму django в качестве базы, которая содержит в себе recaptcha.Вот соответствующий код:
forms.py
from django.contrib.auth.forms import PasswordResetForm
from snowpenguin.django.recaptcha2.fields import ReCaptchaField
from snowpenguin.django.recaptcha2.widgets import ReCaptchaWidget
class CaptchaPasswodResetForm(PasswordResetForm):
captcha = ReCaptchaField(widget=ReCaptchaWidget())
urls.py
from django.conf.urls import url
from landingpage.forms import CaptchaPasswodResetForm
from django.contrib.auth import views as auth_views
urlpatterns = [
url(r'^password-reset/$', auth_views.password_reset, {'password_reset_form': CaptchaPasswodResetForm}, name='new_password_reset'),
url(r'^password-reset-done/$', auth_views.password_reset_done, name='password_reset_done'),
]
password_reset_form.html
{% extends "base.html" %}
{% load i18n %}
{% load recaptcha2 %}
{% block head %}
{% recaptcha_init %}
{% endblock %}
{% block content %}
<form method="post" action=".">
{% csrf_token %}
{{ password_reset_form.as_p}}
<input type="submit" value="{% trans 'Submit' %}" />
</form>
{% endblock %}
Что следуетслучается, что поля для формы отображаются в шаблоне из-за тега, который я добавил в URL.Однако вместо этого шаблон просто игнорирует его, когда я помещаю в него тег.Когда я использую «форму», он использует форму сброса пароля по умолчанию.Я что-то упускаю или делаю неправильно?