访问/ Runserver时django中的404错误返回没有错误

时间:2012-08-06 16:22:48

标签: python django get http-status-code-404 django-urls

当我同步syncdb和runserver时,一切都在Django中正常运行,但是当我尝试访问http://127.0.0.1:8000/上的网页时,它会返回404错误。

Page not found (404)
Request Method: GET
Request URL:    http://127.0.0.1:8000/
Using the URLconf defined in MyBlog.urls, Django tried these URL patterns, in this order:
^admin/
The current URL, , didn't match any of these.

奇怪的是,当我在页面上访问/admin时,它运行正常。我不明白这里失败了什么。任何帮助都会很棒!

2 个答案:

答案 0 :(得分:0)

您需要到主页的URL路由。 MyBlog.urls中的urlpatterns变量应该具有像(r'^ $',app.views.show_homepage)这样的元组对,其中show_homepage是在views.py中定义的函数。有关URL调度程序的更多信息,您可以在此处阅读:https://docs.djangoproject.com/en/dev/topics/http/urls/

答案 1 :(得分:0)

查看chapter 3 of Django's Writing your first Django app教程。

简而言之,您需要指定(在urls.py中)Django应为特定URL运行的代码;没有定义默认网址(您会在urls.py中看到包含管理网址的行。)

修改您的urls.py,使其看起来像

from django.conf.urls import patterns, include, url
from django.views.generic import TemplateView

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^$', TemplateView.as_view(template_name="home.html"),
)

(您还需要在home.html中指定的其中一个目录中创建TEMPLATE_DIRS