PasswordResetView принимает 1 позиционный аргумент, но 2 были даны - PullRequest
0 голосов
/ 06 января 2020
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 Ответ

1 голос
/ 06 января 2020

Вы не можете использовать его так, правильный пример будет:

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())
]

Обратите внимание, что PasswordResetView является представление на основе классов и вам нужно вызвать .as_view() метод.

...