当我同步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
时,它运行正常。我不明白这里失败了什么。任何帮助都会很棒!
答案 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