我正在尝试从模板扩展,并且我不断收到相同的 TemplateDoesNotExist 错误。所有其他页面,不扩展基本模板工作(他们只有一些虚拟的HTML)
我做了一个ls -l,文件存在,所有权限都是完美的:
-rw-r--r-- 1 atrus users 1625 Mar 13 13:05 base.html
drwxr-xr-x 2 atrus users 4096 Mar 13 10:50 css
drwxr-xr-x 2 atrus users 4096 Mar 13 10:51 img
-rw-r--r-- 1 atrus users 136 Mar 13 13:14 index.html
-rw-r--r-- 1 atrus users 407 Mar 12 12:16 login.html
-rw-r--r-- 1 atrus users 662 Mar 12 03:21 register.html
-rw-r--r-- 1 atrus users 59 Mar 12 02:41 temp.html
因此,这不是权限问题,而是文件(base.html存在)
我认为我正在调用(索引)只是:
def index(request):
return render_to_response('menu/index.html')
我的index.html如下:
{% extends 'base.html' %}
{% block title %}Home{% endblock title %}
{% block content %}
<p>here be content <p>
{% endblock content %}
错误发生在第一行。
我的TEMPLATE_DIRS的settings.py是:
TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
'/home/atrus/Dropbox/workspace/menu/menu/templates'
)
答案 0 :(得分:1)
看起来你的模板文件夹中没有menu
目录(假设你在ls
的位置)。您是否尝试过return render_to_response('index.html')
此外,正如我的评论中所述,您的TEMPLATE_DIRS
是否是正确的文件路径?我不确定你是否意外地复制了“菜单”
答案 1 :(得分:1)
当您遗漏评论时,您的TEMPLATE_DIRS
设置就是这样:
TEMPLATE_DIRS = ('/home/atrus/Dropbox/workspace/menu/menu/templates')
实际上是单个字符串,而不是元组。你需要一个逗号:
TEMPLATE_DIRS = ('/home/atrus/Dropbox/workspace/menu/menu/templates',)