当我们扩展allauth视图并基于该视图创建新的url时,仍然需要django allauth的旧“ / accounts / *” URL吗?

时间:2019-04-26 06:01:12

标签: python django django-allauth allauth

我扩展了django-allauth的SignupView,并创建了一个网址“ / account-signup /”,并对模板进行了一些细微更改,并使用了自己的网址名称。因此,它一直显示以下错误:

在/ account-signup /下的NoReverseMatch 找不到“ account_login”的反向按钮。 “ account_login”不是有效的视图函数或模式名称。

我尝试搜索模板中使用URL名称account_login的位置。另外,我尝试启用django allauth给定的默认URL。当urls.py文件中包含allauth URL时,它不会显示错误。

/signup.html

DateTime.Now.AddDays(2)

/my_app/urls.py

{% extends "account/base.html" %}

{% load i18n %}

{% block head_title %}{% trans "Signup" %}{% endblock %}

{% block content %}
<h1>{% trans "Sign Up" %}</h1>

<p>{% blocktrans %}Already have an account? Then please <a href="{{ login_url }}">sign in</a>.{% endblocktrans %}</p>

<p>some content from sugat</p>

<form class="signup" id="signup_form" method="post" action="{% url 'my_app:custom_signup' %}">
  {% csrf_token %}
  {{ form.as_p }}
  {% if redirect_field_value %}
  <input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
  {% endif %}
  <button type="submit">{% trans "Sign Up" %} &raquo;</button>
</form>

{% endblock %}

/myproject/urls.py

from django.conf.urls import url

from .views import *

app_name = "my_app"

urlpatterns = [
    url(r'^account-signup/$', AccountSignUp.as_view(), name="account_signup"),
]

0 个答案:

没有答案