找不到Django URL

时间:2014-09-23 19:33:11

标签: python django

我是Django的新手,并使用本教程学习https://docs.djangoproject.com/en/1.6/intro/tutorial03/ 在路由中遇到一点问题。

查看代码:

def index(request):
    return HttpResponse(r'<h3 style="font-style: bold;">Index</h3>')

网址配置代码:

1。博客/网址

urlpatterns = patterns('',
    url(r'^$', views.index, name='index')
)

2,项目/网址

  urlpatterns = patterns('',
        url(r'^blog/', include('blog.urls')),
        url(r'^admin/', include(admin.site.urls)),
    )

当我来到127.0.0.1:8080/index

找不到网页(404)

使用les1.urls中定义的URLconf,Django按以下顺序尝试了这些URL模式:

  1. ^博客/
  2. ^管理员/
  3. 当前网址索引与这些网址中的任何一个都不匹配。

    项目结构

    blog/
        templates
        __init__.py
        admin.py
        models.py
        tests.py
        urls.py
        views.py
    les1/
        __init__.py
        settings.py
        urls.py
        wsgi.py
    db.sqlite3
    manage.py
    

    无法找到错误:(

2 个答案:

答案 0 :(得分:0)

您在浏览器中输入的实际网址是多少?是127.0.0.1:8000还是127.0.0.1:8000/index?从你的帖子,我认为它是第二个:

The current URL, index, didn't match any of these.

如果您输入127.0.0.1:8000/blog

,该怎么办?

index是您的路线名称,仅在服务器端使用。它是用于快速反转和显示URL的快捷方式:

from django.core.urlresolvers import reverse

print(reverse('index'))
# will output "/blog", which is the actual URL

答案 1 :(得分:-1)

从视图代码中删除r。

def index(request): return HttpResponse('<h3 style="font-style: bold;">Index</h3>')