Django无法识别URL

时间:2013-08-25 04:59:03

标签: python django

我的django项目中的一些网址出现404错误。例如:

Page not found (404)
Request Method: GET
Request URL:    http://127.0.0.1:8000/admin
Using the URLconf defined in some_project.urls, Django tried these URL patterns, in this order:
^$ [name='home']
^admin/$

但我没有改变任何文件。

urls.py

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

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    # Examples:
    url(r'^$', 'views.index',name='home',),

    url(r'^admin/$', include(admin.site.urls)),


)

这个问题似乎是在我安装了Django Evolve后出现的。不确定这是否与它有关。

3 个答案:

答案 0 :(得分:1)

您的请求网址为http://127.0.0.1:8000/admin,但您的网址是url(r'^admin/$', include(admin.site.urls))

urlpattern中有一个额外的/

如果你想包含其他URLConfs,这里有一个包含其他URLconf的例子:

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

urlpatterns = patterns('',
    # ... snip ...
    url(r'^comments/', include('django.contrib.comments.urls')),
    url(r'^community/', include('django_website.aggregator.urls')),
    url(r'^contact/', include('django_website.contact.urls')),
    # ... snip ...
)

正如Burhan正确指出的那样,您需要移除尾随的$,以便include可以正常工作。

原因是因为正则表达式trailing $ matches right after the last character in the string

答案 1 :(得分:1)

你的模式不正确,应该是:

url(r'^admin/', include(admin.site.urls)),

答案 2 :(得分:0)

设置文件存在问题。我和其他开发人员有合并问题。

/ $与此问题无关。我在遇到麻烦时加了它。

相关问题