反向使用'()'参数'django.contrib.auth.views.login'和关键字参数'{}'在 Django 1.4.3 中找不到



我知道这个问题已经被问了好几次了,但我想不通。。。

我使用的Django 1.4.3带有构建身份验证视图。当我写下面的代码时,我得到了这个错误:

<div id="divAuthbox">
  <p id="instructionTooltip">Sign in</p>
  <form action="{% url django.contrib.auth.views.login %}" method="post">
    {% csrf_token %}
    <p class="label">{{form.username.label_tag}}</p>
    <p class="input">{{form.username}}</p>
    <p class="label">{{form.password.label_tag}}</p>
    <p class="input">{{form.password}}</p>
    <input class="loginButton" type="submit" value="login" />
    <input type="hidden" name="next" value="{{ next }}" />    
    <a href="/core/login_retrieval" class="padding" id="accessLink">Can't access your account?</a>
  </form>
</div>

请注意,我没有在django.contrib.auth.views.login中添加额外的引号,因为我知道1.4.3不需要。然而,我仍然得到以下错误:

Reverse for 'django.contrib.auth.views.login' with arguments '()' and keyword arguments '{}' not found.

很抱歉,我问了一个重复的问题,但我不明白1.4.3有什么问题。

谢谢。

将其添加到您的urls.py:

url('', include('django.contrib.auth.urls')),

我正在使用Django 1.5

url模板标记接受url名称,而不是查看函数路径。您应该将该视图添加到指定名称为"登录"的urlpatters中,稍后使用{% url login %}

最新更新