我正在尝试使用Django版本1.9.x创建我自己的项目,但我不能使 /
的索引页面工作 .
这是我的文件夹结构:
rxe/
urls.py
wsgi.py
settings.py
blog/
migrations/
static/
blog/
css/
js/
img/
templates/
blog/
index.html
admin.py
models.py
tests.py
urls.py
views.py
manage.py
rxe/urls.py
:
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'$', include('blog.urls')),
]
blog/urls.py
:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.IndexView.as_view(), name = 'index'),
]
blog/views.py
:
from django.http import HttpResponse, HttpResponseRedirect
from django.views.generic import TemplateView
class IndexView(TemplateView):
template_name = 'blog/index.html'
访问 localhost:8000/
时,错误:
在/ blog / index.html上的TemplateDoesNotExist
在它下面,在 Template-loader postmortem :
django.template.loaders.app_directories.Loader:/usr/local/lib/python2.7/dist-packages/Django-1.9.4-py2.7.egg/django/contrib/admin/templates/blog/index . html(源不存在)django.template.loaders.app_directories.Loader:/usr/local/lib/python2.7/dist-packages/Django-1.9.4-py2.7.egg/django/contrib/auth/ templates / blog / index.html(源不存在)
如果我返回一个 HttpResponse('Hello')
,就像在教程中一样,但是这个教程没有 /
路径的任何视图,我想要一个 .
Edit
rxe/settings.py
,它是如何创建的:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
1 回答
您必须将
blog
应用程序添加到项目中,方法是将其包含在INSTALLED_APPS
设置中:否则模板加载器将不会处理
blog
目录,因为它不被视为应用程序 .