Google App Engine 上的 Django TemplateDoesNotExist

Posted

技术标签:

【中文标题】Google App Engine 上的 Django TemplateDoesNotExist【英文标题】:Django TemplateDoesNotExist on Google App Engine 【发布时间】:2012-08-15 19:58:57 【问题描述】:

我不断收到TemplateDoesNotExist,但我不知道如何调试它。我已将模板所在的文件夹添加到 TEMPLATE_DIRS 元组中,当我从 .py 文件中调用 get_template 时,模板加载正常,但是当我从模板中调用它时,使用 @ 987654325@标签,它引发TemplateDoesNotExist

模板文件不在app.yaml 中的static_files 路径下。

让我感到困惑的是为什么它可以正常加载 get_template 而不是 extend

有没有办法找出 Django 正在寻找的路径?

【问题讨论】:

您的extends 标签是否使用引号作为模板名称? 这是我的扩展标签:% extends "base.html" % 【参考方案1】:

你可以试试:

from django.conf import settings
print settings.TEMPLATE_DIRS

查看使用的模板目录路径。

【讨论】:

这会返回正确的路径。有没有办法找出导致TemplateDoesNotExist 问题的路径? 不确定,但这个问题的答案可能会对您有所帮助:***.com/questions/3038459/django-template-path。它向您展示了如何正确设置 template_dirs 设置。你可能有问题。 如果这没有帮助,您也可以尝试(出于调试目的)django.template.loaders.app_directories.Loader,可以在此处找到文档:docs.djangoproject.com/en/dev/ref/templates/api/#loader-types - 它加载应用程序文件夹下的模板文件夹中的模板。默认情况下启用它,但如果不只是将此字符串 'django.template.loaders.app_directories.Loader' 添加到您的 TEMPLATE_LOADERS 设置中。

以上是关于Google App Engine 上的 Django TemplateDoesNotExist的主要内容,如果未能解决你的问题,请参考以下文章

Google App Engine 上的 Production App 突然无法访问 Google Cloud Storage

Google Apps 域上的 Google App Engine

Google App Engine 上的 web.py

部署失败:Google App Engine 上的 Kotlin Spring Boot 应用

Google App Engine 上的 Django TemplateDoesNotExist

OSX 上的 Google App Engine SDK 路径在哪里?