繁体   English   中英

Flask应用程序在Heroku上失败:没有名为app的模块

[英]Flask application failing on Heroku: no module named app

我有一个已部署到Heroku的Flask应用程序,但出现错误:

2018-08-27T12:39:32.197715+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=heroku-seb-test.herokuapp.com request_id=3e02d494-1a3f-4467-9eaa-aaa551b4ca03 fwd="91.143.113.54" dyno= connect= service= status=503 bytes= protocol=https

看来这是我的Flask应用程序结构中的一个错误,因为在它的上方会抛出一个Python / Flask异常:

File "/app/.heroku/python/lib/python2.7/site- 
packages/gunicorn/util.py", line 357, in import_app 
__import__(module)
ImportError: No module named app

这是我的文件夹结构:

  • 对开
    • route.py
    • (Procfile和其他依赖项)
    • 静态的
      • 的CSS
      • js
      • 图片
      • LIB
    • 范本
      • index.html
    • 静脉

这是我的routes.py文件:

from flask import Flask
from flask import render_template, request, flash, session, url_for, 
redirect

app = Flask(__name__)

@app.route('/')
def index():
return render_template('index.html')

app.run(debug=True)

这是我的Procfile

web: gunicorn app:app

Procfile告诉Heroku如何运行您的应用程序。 gunicorn 期望以module.variable形式给出参数,以标识它应该运行的事物。

今天,你告诉它你的应用程序是一个变量,名为app在一个模块调用app

web: gunicorn app:app

但是您的模块不称为app而是称为routes (文件为routes.py )。 更新您的Procfile指向正确的对象:

web: gunicorn routes:app

提交更改并推送到Heroku以查看其效果。 (或者您可以使用heroku localheroku local试用。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM