簡體   English   中英

Flask 將執行 __init__.py 中的代碼,但無法讓它在 app.py 中運行

[英]Flask will execute code in __init__.py but can't get it to run in app.py

如果我正確理解文檔,在 Python3 Flask ___init___.py用於導入類,可以完全為空。

我正在嘗試使用 app.py 來保存我的代碼,但我不知道如何讓 Flask 執行 app.py。 我放入__init__.py的代碼將執行,但我認為我不應該那樣做。 我看過一些帖子,其中這樣做可能會導致代碼在剛導入時執行。

如何讓 Flask 訪問我的 app.py 而不是__init__.py

這是我的 wsgi 配置文件

import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp/")

from FlaskApp import app as application
application.secret_key = 'something secret'

在我的wsgi.py ,我只需導入應用程序(來自 app.py)並運行它。 我確實有一個較舊的設置,但該方法仍然適用。

from app import app

if __name__ == "__main__":
  app.run()

我的app.py具有全局 Flask 應用程序變量以及所有其他設置和 Flask 代碼(日志記錄、路由等)

app = Flask(__name__)

您是否將FLASK_APP環境變量設置為您的 app.py 文件?

$ export FLASK_APP=app
$ flask run

請參閱: https://flask.palletsprojects.com/en/1.1.x/cli/#application-discovery

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM