在settings.py中,我选择使用sqlite3运行并命名此数据库database.db。
from blog_app.views import oneView, anotherView
from django.conf.urls import patterns, include, url
urlpatterns = patterns('',
url(r'^one/$', oneView),
url(r'^another/$', anotherView),
# Examples:
# url(r'^$', 'django_project.views.home', name='home'),
# url(r'^django_project/', include('django_project.foo.urls')),
# Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
# url(r'^admin/', include(admin.site.urls)),
)
和我的views.py看起来像这样
# -*- coding:UTF-8 -*-
from django.shortcuts import render_to_response
def oneView(request):
return render_to_response("index.html", {"content":"Hello World, from oneView"})
def anotherView(request):
return render_to_response("index.html", {"content":"Hello Again, from anotherView"})
我的index.html是blog / blog_app / templates / index.html。因为标准的settings.py文件说明了这一点:
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# 'django.template.loaders.eggs.Loader',
)
我认为它无法找到我的index.html文件,这很奇怪。它没有找到正确的目录吗?
尽管如此,我只在&one /"得到一个" TemplateDoesNotExist。我试图去的时候出错了 127.0.0.1:8000/one/或127.0.0.1:8000/another /
任何想法?
答案 0 :(得分:2)
尝试在settings.py中执行类似的操作
SETTINGS_PATH = os.path.dirname(__file__)
PROJECT PATH = os.path.join(SETTINGS_PATH, os.pardir)
PROJECT_PATH = os.path.abspath(PROJECT_PATH)
BLOG_PATH = os.path.join(PROJECT_PATH, "blog_app)
TEMPLATES_PATH = os.path.join(BLOG_PATH, "templates")
TEMPLATE_DIRS = (
TEMPLATES_PATH,
)
错误通常是由于模板目录
配置错误造成的答案 1 :(得分:0)
您的确切错误消息是什么? (调试信息)
我对模板使用这种配置:
import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'templates')
)
可以在django应用程序的templates
文件夹(旁边manage.py
)中访问它们,在设置的应用程序后面的子文件夹中设置(不是您提供给我们的网址的情况)用)。