Django Интеграция существующего кода в представление на основе общего класса с двухфакторной аутентификацией
У меня есть следующий вид входа в систему:
@axes_dispatch
@check_recaptcha_login
def loginpage(request, credentials: dict = None):
form = RegisterForm()
attempts_list = get_user_attempts(request, credentials)
attempt_count = max(
(
attempts.aggregate(Sum("failures_since_start"))[
"failures_since_start__sum"
]
or 0
)
for attempts in attempts_list
)
#print(attempt_count)
attempt_count = attempt_count
context = {'attempt_count': attempt_count}
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(request, username=username, password=password)
if user is not None:
if user.is_active and attempt_count < 3:
login(request, user)
return redirect('home')
elif user.is_active and request.recaptcha_is_valid:
login(request, user)
return redirect('home')
if not user.is_active:
messages.error(request, 'Account for this User has not been Activated.')
else:
messages.error(request, 'Username or Password is Incorrect.')
#print(context)
return render(request, 'login.html', context)
Но теперь я использую двухфакторные представления аутентификации django и хотел бы интегрировать декораторы и код подсчета попыток и контекст, а также попытки входа в систему, если пользователь не является None :) в моем приведенном выше коде с представлением на основе класса LoginView из следующего ссылка: https://github.com/Bouke/django-two-factor-auth/blob/master/two_factor/views/core.py
Я считаю, что мне нужно изменить свое собственное представление входа в систему, чтобы вызвать loginView, указанный в ссылке выше, и добавить в представление мои декораторы и мой собственный код, упомянутый выше, но не знаю, как это сделать. Помощь очень ценится. Спасибо