PasswordResetView接受1个位置参数,但给出了2个

时间:2020-01-06 17:06:43

标签: django django-forms

def password_recover(request):
    print("password_recover")
    return password_reset(request, subject_template_name='registration/password_reset_subject.txt')

所以我有那段代码,可以在django 1.8上工作。当迁移到django 2.2时,我也更改了那段代码

def password_recover(request):
        print("password_recover")
        return PasswordResetView(request, subject_template_name='registration/password_reset_subject.txt')

我遇到错误,需要1个位置参数,但给了2个

1 个答案:

答案 0 :(得分:1)

您不能像这样使用它,正确的示例将是:

from django.contrib.auth.forms import PasswordResetForm
from django.contrib.auth import views as auth_views

class PasswordResetView(auth_views.PasswordResetView):
    subject_template_name = 'registration/password_reset_subject.txt'

urls.py

urlpatterns = [
    path('', views.PasswordResetView.as_view())
]

请注意,PasswordResetViewclass-based view,您需要调用.as_view()方法。