Django allauth и google recaptcha на странице входа в систему - какие-нибудь хорошие решения?
Я получаю эту ошибку error Exception Valuelogin() получил неожиданный аргумент ключевого слова 'redirect_url' Местоположение исключения: \ allauth \ account \ views.py, строка 159, в form_valid
Я бы подумал, что есть несколько хороших решений, но ни одно из них не работает для меня, кажется, устаревшее?
Я использую django-allauth и django-recaptcha 2.0.6
На странице входа в систему отображается рекапча Google, но я не думаю, что она вообще работает. Когда я ввожу неправильный пароль, он говорит, что он неправильный, даже если я не устанавливаю флажок. Я пробовал поместить {{form.captcha}} в html, но он вообще не отображается. Когда я ввожу правильный пароль с установленным флажком или без него, я получаю указанную выше ошибку.
Должно быть простое решение?
Это мой код:
forms.py
from allauth.account.forms import LoginForm
from captcha.fields import ReCaptchaField
class MyCustomLoginForm(LoginForm):
def login(self):
captcha = ReCaptchaField()
# You must return the original result.
return super(MyCustomLoginForm, self).login(captcha)
login.html
<form class="login" method="POST" action="{% url 'account_login' %}">
{% csrf_token %}
{{ form.as_p }}
{% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
<a class="button secondaryAction" href="{% url 'account_reset_password' %}">{% trans "Forgot Password?" %}</a>
<script src='https://www.google.com/recaptcha/api.js'></script>
<div class="g-recaptcha" data-sitekey="xxxx"></div>
<button class="primaryAction" type="submit">{% trans "Sign In" %}</button>
</form>
settings.py
ACCOUNT_FORMS = {'login': 'myapp.forms.MyCustomLoginForm'}
GOOGLE_RECAPTCHA_SECRET_KEY = 'yyyy'