django - 登录视图没有反向匹配

2024-04-22

我只是尝试 d​​jango 并按照文档进行身份验证。

基本上我想看一下用户登录表单页面,但我得到:

Caught NoReverseMatch while rendering: Reverse for ''django.contrib.auth.views.login'' with arguments '()' and keyword arguments '{}' not found.

我的 urls.py 文件:

from django.conf.urls.defaults import patterns, include, url

urlpatterns = patterns('',
    url(r'^accounts/login/$', 'django.contrib.auth.views.login'),
)

我的settings.py(INSTALLED_APPS)

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
)

编辑:我意识到我看错了东西。模板文件中出现错误:

{% if form.errors %}
<p>Your username and password didn't match. Please try again.</p>
{% endif %}

<form method="post" action="{% url 'django.contrib.auth.views.login' %}">
{% csrf_token %}
<table>
<tr>
    <td>{{ form.username.label_tag }}</td>
    <td>{{ form.username }}</td>
</tr>
<tr>
    <td>{{ form.password.label_tag }}</td>
    <td>{{ form.password }}</td>
</tr>
</table>

<input type="submit" value="login" />
<input type="hidden" name="next" value="{{ next }}" />
</form>

具体针对该行:

<form method="post" action="{% url 'django.contrib.auth.views.login' %}">

尝试为 url 设置名称并在 url 标记中使用它:

url(r'^accounts/login/$', 'django.contrib.auth.views.login', name='login'),

并在模板中:

<form method="post" action="{% url 'login' %}">
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

django - 登录视图没有反向匹配 的相关文章

随机推荐