2013-08-18 86 views
2

我正在使用Python,Flask和Peewee ORM。我的DATABASE_URL設置正確。Heroku:關係不存在

我已經測試了本地服務器上的功能,並且它可以正常工作。當我部署到Heroku時,它在Peewee在我的應用的if name == main部分創建的桌面上出錯。

的錯誤是:

ProgrammingError: relation "connection" does not exist (connection 
is the name of my model/would-be table). 

UPDATE:我通過具體路線下創建的文件views.py表解決了這一問題。這是必要的嗎?我更喜歡更清潔的方式。

回答

1

我從來沒有使用過Heroku,但我猜Heroku正以某種方式導入你的應用程序,繞過if __name__ == "__main__"塊,該塊只在該模塊直接運行時運行。你應該嘗試從if塊移動邏輯到before_first_request處理程序,以便它仍然會運行,但只有一次(每個工人/應用實例)

@app.before_first_request 
def initialize(): 
    app.logger.info("Creating the tables we need") 
    ... 
相關問題