2

我正在使用 Flask 开发我的第一个应用程序并部署到 Heroku。以下是我在本地和 Heroku 上收到的错误消息。也可以在这里看到:http ://warm-beyond-4111.herokuapp.com/

jinja2.exceptions.TemplateNotFound TemplateNotFound: home.html

此处错误的较长版本:

File "/app/.heroku/python/lib/python2.7/site-packages/flask/templating.py",
line 61, in get_source raise TemplateNotFound(template)
TemplateNotFound: home.html

这是该应用程序的概述:

目录:/helloflask

档案:

web: python run.py

要求.txt

Flask==0.9
Jinja2==2.6
Werkzeug==0.8.3
distribute==0.6.28
wsgiref==0.1.2

运行.py

import os
from helloflask import app
port = int(os.environ.get('PORT', 5000))
app.run(host='0.0.0.0', port=port, debug=True)

目录:/helloflask/helloflask

__init__.py

from flask import Flask, render_template
app = Flask(__name__)
import helloflask.views

视图.py

from helloflask import app
from flask import Flask, render_template
@app.route('/')
def home():
return render_template('home.html')

目录:/helloflask/templates

home.html = 标准 HTML 文件

目录:/helloflask/static/css

main.css = 标准 CSS 文件

我已经在互联网上搜索了一个没有运气的答案。有人见过这个吗?

4

2 回答 2

3

尝试在应用程序 /templates 的根目录创建模板文件夹,看看是否能解决问题。我想你可以在 Flask 中设置模板文件夹,只是现在找不到。

此外,您可能喜欢关于 Heroku 上烧瓶部署的 github 存储库。 https://github.com/zachwill/flask_heroku

另请查看此 SO Post on folder structure - flask blueprint template folder 如果您希望将模板保留在 helloflask 下,您可能想要使用 Flask Blueprints。

我不在 Heroku 上使用 Flask,所以没有验证这个设置。希望这可以帮助。

于 2013-02-12T18:57:18.567 回答
1

templates文件夹应作为您的应用程序包的一部分。将其移入/helloflask/helloflask.

请参阅http://flask.pocoo.org/docs/quickstart/#a-minimal-application中的#2 。

于 2013-02-12T21:33:32.420 回答