我是Django的新手,并且在使用django.contrib.auth.login时遇到困难。在Django模板中引用django.contrib.auth.login
我的urls.py:
from django.conf.urls import patterns, include, url
from myapp import views
from django.contrib import auth
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
url(r'^accounts/', include('accounts.urls')),
url(r'^accounts/login/$', auth.login)
)
现在,当我尝试使用url模板
<a href="{% url 'accounts/login' %}?next={{request.path}}">Login</a>
我得到NoReverseMatch错误。 我在做什么错? 谢谢。编号1: 我终于能够解决NoReverseMatch错误。谢谢。 虽然我仍然有问题。这是我更新的代码:
urls.py:
from django.conf.urls import patterns, include, url
from myapp import views
from django.contrib.auth.views import login
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
url(r'^accounts/', include('accounts.urls')),
url(r'^accounts/login/$', login)
)
我的模板的index.html:
<a href="{% url 'django.contrib.auth.views.login' %}?next={{request.path}}">Login</a>
问题: 当我到达的页面,并点击 “登录” 我出现以下错误:
DoesNotExist在/帐号/登录/
所以,厕所ks为accounts/login /中的视图,我没有登录视图,因为 django.contrib.auth.views.login应该为我提供视图。我应该如何修改我的urls.py?或者有其他解决方法吗?谢谢。
编辑2:
我的账户/ urls.py:
from django.conf.urls import patterns, url
from accounts import views
urlpatterns = patterns('',
url(r'^register/$', views.register, name='register')
)
如果没有推荐的方法是可行的,尝试命名的网址,并从模板调用名为url – karthikr