Python Django的NoReverseMatch 1.10

Python Django的NoReverseMatch 1.10,python,django,Python,Django,这是我的url.py from django.conf.urls import url from django.contrib import admin from app import views, auth urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^$', views.index, name = 'index'), url(r'^login/', auth.login, name = 'login'

这是我的url.py

from django.conf.urls import url
from django.contrib import admin
from app import views, auth
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$', views.index, name = 'index'),
    url(r'^login/', auth.login, name = 'login'),
    url(r'^logout/', auth.logout, name = 'logout'),
]
当我在模板中使用时,出现错误

NoReverseMatch at /
Reverse for 'admin' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

有人能告诉我怎么解决这个问题吗?非常感谢。

您应该使用管理员名称空间,如中所述。您还可以查看该命名空间中的其他管理员URL

{% url 'admin:index' %}

如果您想拥有指向
/admin/
站点的url,请使用
admin:index

如果安装,您可以使用
/manage.py show\u url
获取应用程序的url列表在项目url.py中设置管理员url,该文件夹与settings.py相同

Url(r'^admin/', admin.site.urls),
然后在模板中调用它:


1。在应用程序文件夹中创建
url.py
并使用

urlpatterns = [
    url(r'^admin/', admin.site.urls),
]
以及在模板使用中

<a href="{% url 'admin:index' %}">Admin</a>

  • 使用
    并保持url.py不变(不做任何更改)

  • 这在你的应用程序文件夹中吗?你的项目文件夹呢?是的,它在我的应用程序文件夹中。将它设置在你的项目文件夹中。在settings.py所在的同一文件夹中创建一个url.py,然后添加“url(r'^admin/',admin.site.url)”,并使用“Thank@Almost初学者请发表评论我将接受您的回答”。一秒钟后,url名称周围缺少引号:
    {%url'管理员:索引“%}