Django中提示TemplateDoesNotExist?
項目目錄:
settings中模板路徑定義如下:
TEMPLATE_DIRS = ( os.path.join(BASE_DIR, templates).replace("", /),)urls中定義如下:
url(r^index/$, "MyFirstDjango.views.index"),views定義如下:def index(request):html_template = loader.get_template("index.html")
html_context = ({}) return HttpResponse(html_template.render(html_context))訪問http://127.0.0.1:8000/index/ 的時候頁面提示:TemplateDoesNotExist at /index/
我用的是1.9版本。
需要在settings.py文件中設置TEMPLATES下的DIRS
如下:TEMPLATES = [
{
BACKEND: django.template.backends.django.DjangoTemplates,
DIRS: [
/home/html/example.com,
/home/html/default,
],
},
{
BACKEND: django.template.backends.jinja2.Jinja2,
DIRS: [
/home/html/jinja2,
],
},
]
其中 DIRS就是html模板文件的路徑
2017.10.12回答,使用最新Django1.11.5,在學習使用Django搭建簡易博客的學習過程中,在終端運行python manage,py runserver後打開瀏覽器進入測試頁面遇到了TemplateDoesNotExist的問題,查看到以下提示:
大概意思就是說我在setting.py中使用的TEMPLATE_DIRS在Django1.8之後就棄用了,讓我把模板路徑放到TEMPLATE專屬的目錄裡面,我想他應該是這個意思把:
試了一下還真成功了:
網上很難查到最新的答案,有的時候還是得靠自己debug。。
我的是1.5的django,在settings.py中的 TEMPLATE_DIRS里 要寫絕對路徑才行,如下代碼。或者直接把templates文件夾放到相應的工程文件夾里,比如拖進你的polls文件夾中,就不用更改settings中的模板路徑了。
TEMPLATE_DIRS = (
"D:/work/space/PycharmProjects/mysite2/templates"
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Dont forget to use absolute paths, not relative paths.
)
templates目錄應該放到polls目錄下
templates 和 setting.py得是相同目錄的
是不是應該換個新點的版本了
請問你是怎麼解決的?
templates文件夾位置放的不對吧 檢查下
去看看官方文檔,裡面有詳細說明templates目錄應該放在哪個目錄下。別人告訴你的結果,你下次再遇到還是不知道怎麼解決。相信你很快解決的。
推薦閱讀: