2015-08-04 2 views
1

Я пытаюсь создать представления для всего процесса аутентификации в Django, но у меня есть проблема с обратным тегом url в представлениях.NoReverseMatch on django generated views

у меня есть: urls.py

url('^v1/back/', include('django.contrib.auth.urls')) 

login.html

{% extends "base.html" %} 
{% load i18n %} 

{% block content %} 
<form method="post" action="."> 
    {{ form.as_p }} 

    <input type="submit" value="{% trans 'Log in' %}" /> 
    <input type="hidden" name="next" value="{{ next }}" /> 
</form> 

<p>{% trans "Forgot password" %}? <a href="{% url 'django.contrib.auth.views.auth_password_reset' %}">{% trans "Reset it" %}</a>!</p> 
<p>{% trans "Not member" %}? <a href="{% url 'django.contrib.auth.views.registration_register' %}">{% trans "Register" %}</a>!</p> 
{% endblock %} 

И когда я достигаю локальный: 8000/v1/назад/Логин/я есть:

NoReverseMatch at/v1/back/login/

Reverse для 'django.contrib.auth.views.auth_password_reset' с аргументы '()' и аргументы ключевого слова '{}' не найдены. 0 шаблон (ы) попробовал: []

Дело в том, что вы можете видеть, я стараюсь положить полный путь, он по-прежнему не работает. При попытке открыть другой вид, как изменение пароля, он перенаправляет меня:

http://192.168.56.103:8000/accounts/login/?next=/v1/back/password_change/

который, очевидно, не работает, и когда я доступ сброса пароля:

{% extends "base.html" %} 
{% load i18n %} 

{% block content %} 
<form method="post" action="."> 
    {{ form.as_p }} 

    <input type="submit" value="{% trans 'Submit' %}" /> 
</form> 
{% endblock %} 

Вместо этого у меня есть внешний вид администратора django и мой base.html.

Я предполагаю, что здесь много проблем, я пытаюсь решить их один за другим, но я не знаю, что я сделал неправильно в части url.

Не знаю, является ли это актуальным, но часть моего приложения обслуживается Django Rest Framework, и я пытаюсь установить oAuth2.

ответ

2

Правильное название для сброса пароля просто password_reset, обратить его использовать:

{% url 'password_reset' %} 

Чтобы исправить логин переадресацией, вы должны настроить LOGIN_URL в вашем settings.py

Я предлагаю вам удалите часть, относящуюся к шаблону, и разместите ее как отдельный вопрос.