【发布时间】:2016-05-06 08:31:18
【问题描述】:
我今天面临一个奇怪的问题。我正在获取 TemplateDoesNotExist(见第一张图片),但是当我尝试使用 debug-toolbar 调试模板源时,它正确显示了模板路径(见图 2)更奇怪的是,当我单击特定模板按钮时,它正确显示了源模板。
这是我第一次遇到这样的问题。有人可以解释为什么我会收到此错误。
编辑:添加 settings.py 文件(相关部分)
SETTINGS_PATH = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(SETTINGS_PATH, 'templates')],
'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',
],
},
},
]
谢谢
【问题讨论】:
-
不要发布难以阅读的文本图像,而是发布实际文本...以及重现错误所需的信息
-
我只是想了解为什么即使路径上存在模板,我也会收到 TemplateDoesNotExist 异常?当我点击调试工具栏上的“模板”时检查第二张图片..(右侧)......请帮助我理解这个问题......我在这个问题上停留了很长时间
-
您应该包括异常跟踪的任何有用部分。
-
@TheCardCheat 我想我面临着与这个问题(stackoverflow.com/questions/1926049/django-templatedoesnotexist)类似的问题,但是当我运行这个命令“chown root ./*”时......我得到了 Operation not allowed跨度>
-
@user3265443 该问题已接受的答案是对默认 django 模板加载的非常简单的解释,除非您已更改或在 INSTALLED_APPS 中没有“注册”,否则似乎是正常的(假设调试-工具栏是准确的,我不使用它)。你为什么要 chown 根的东西?如果您弄乱了参数,那么您可能会遇到导致该模板无法加载的访问异常,因此查看堆栈跟踪文本仍然很有用。
标签: django django-templates django-admin