将Flask应用程序部署到Heroku - “使用中的连接”

时间:2013-12-16 11:15:39

标签: python heroku flask

我正在向Heroku部署一个简单的Flask应用程序 - (第一次使用Flask和Heroku)。当我尝试部署时,我收到“应用程序错误”,该页面告诉我在几分钟后再试一次。日志状态 - “连接[正在使用”],重试几次,然后工作人员退出(如果有帮助,我可以发布日志)。

我的demo.py文件:

import flask, flask.views
import os
import urllib2
from bs4 import BeautifulSoup

opener = urllib2.build_opener()

app = flask.Flask(__name__)

app.secret_key = "bacon"

class View(flask.views.MethodView):
    def get(self):
        return flask.render_template('index.html')


def post(self):
    url = (flask.request.form['url'])
    ourUrl = opener.open(url).read()
    soup = BeautifulSoup(ourUrl)
    title = soup.title.text
    recipe = soup.find("div", {"id": "recipe"}).getText()
    flask.flash(title)
    flask.flash(recipe)
    return self.get()


app.add_url_rule('/', view_func=View.as_view('main'), methods=['GET', 'POST'])

app.debug = True
app.run()

我的proc文件是:     web:gunicorn demo:app

如果我将proc文件更改为web:python demo.py,我可以使用Foreman在本地运行应用程序,但仍然无法部署到Heroku。

非常感谢任何帮助。这是我第一次这样做!!

谢谢。

1 个答案:

答案 0 :(得分:4)

我明白了。需要在app.run()

之前添加以下内容
if __name__ == "__main__":

现在它在Heroku上运行良好。