【问题标题】:jinja2.exceptions.TemplateNotFound Heroku cannot find templatesjinja2.exceptions.TemplateNotFound Heroku 找不到模板
【发布时间】:2020-11-29 23:44:23
【问题描述】:

只是为了解决这个问题,因为这似乎是第一个答案。我的模板位于与我的 app.py 处于同一级别的模板文件夹中。该应用程序在本地按预期运行。但是,当我将我的 github 存储库连接到 Heroku 并启动该站点时,我收到一个内部服务器错误和以下错误。我猜这与无法找到 HTML 文件有关,但这并没有任何意义。和想法?

2020-11-29T23:37:27.274573+00:00 app[web.1]:     template = self.loader.load(self, name, globals)
2020-11-29T23:37:27.274573+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/jinja2/loaders.py", line 115, in load
2020-11-29T23:37:27.274573+00:00 app[web.1]:     source, filename, uptodate = self.get_source(environment, name)
2020-11-29T23:37:27.274574+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/flask/templating.py", line 60, in get_source
2020-11-29T23:37:27.274574+00:00 app[web.1]:     return self._get_source_fast(environment, template)
2020-11-29T23:37:27.274574+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/flask/templating.py", line 89, in _get_source_fast
2020-11-29T23:37:27.274575+00:00 app[web.1]:     raise TemplateNotFound(template)
2020-11-29T23:37:27.274581+00:00 app[web.1]: jinja2.exceptions.TemplateNotFound: LoadData.html
2020-11-29T23:37:27.276708+00:00 app[web.1]: 10.102.182.112 - - [29/Nov/2020:23:37:27 +0000] "GET / HTTP/1.1" 500 290 "https://dashboard.heroku.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36"
2020-11-29T23:37:27.278572+00:00 heroku[router]: at=info method=GET path="/" host=my-mlgui.herokuapp.com request_id=85409ac9-97bc-4fe7-9d07-e23b99cfd0f7 fwd="75.164.50.161" dyno=web.1 connect=0ms service=914ms status=500 bytes=651 protocol=https

【问题讨论】:

  • 模板文件夹及其内容是否作为 repo 的一部分提交?
  • 刚刚仔细检查。确实如此。
  • 您确定模板文件夹/文件存在于 Heroku 使用的同一分支上吗?您说“将我的 github 存储库连接到 Heroku”。在 Heroku 中,您必须设置要使用的分支 like this。默认分支是master,但也许您将模板文件夹/文件提交到不同的分支。
  • 当我部署 repo 时,我确保部署了具有正确工作应用程序的分支。有几个不同之处,例如 app.py 被命名为不同的名称并位于子目录中。基本上,我希望它会说一些类似于找不到应用程序的内容,如果它连接到,就我而言,主要。不是说它找不到应用程序本身引用的东西

标签: python flask heroku


【解决方案1】:

显然,Heroku 正在选择大小写。我有模板,它必须是模板。

【讨论】:

  • 不仅仅是 Heroku。 总是最好与命名保持一致并假设系统区分大小写。
猜你喜欢
  • 2021-05-28
  • 2020-03-20
  • 2018-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-24
  • 2017-11-03
  • 1970-01-01
相关资源
最近更新 更多