错误:找不到 Flask 应用程序

Sai*_*eti 7 flask

错误:无法找到 Flask 应用程序。您没有提供“FLASK_APP”环境变量,并且在当前目录中找不到“wsgi.py”或“app.py”模块。

我面临这个错误flask run

小智 13

我有同样的问题,使用设置环境变量

 $env:FLASK_APP="base.py"
Run Code Online (Sandbox Code Playgroud)

然后

flask run
Run Code Online (Sandbox Code Playgroud)

这对我有用。flask db init这也适用于


Par*_*val 11

执行之前flask run,需要通过执行指定flask应用程序文件

export FLASK_APP=[YOUR_APP_FILE].py
Run Code Online (Sandbox Code Playgroud)

(注意:确保您的应用程序文件位于根目录中)

您可以创建一个名为.flaskenv,这样您就不必每次运行应用程序时都键入上述命令 - Flask 会自动查找该文件。

引用自文档:

如果安装了 python-dotenv,运行 Flask 命令将设置文件 .env 和 .flaskenv 中定义的环境变量。这可以用来避免每次打开新终端时手动设置 FLASK_APP,并使用环境变量设置配置,类似于某些部署服务的工作方式。

  1. 如果您还没有安装python-dotenv,请运行pip install python-dotenv

  2. 在根目录中创建 .flaskenv 文件并填充以下内容:

FLASK_APP=[YOUR_APP_FILE].py
Run Code Online (Sandbox Code Playgroud)

之后就可以安全执行了flask run


小智 9

对于 pycharm Windows,在终端上运行以下行:

  • 设置 FLASK_APP=main.py
  • $env:FLASK_APP = "main.py"
  • 烧瓶运行

这对我有用。


Cob*_*alt 1

一般来说,这意味着 Flask 找不到您的 Flask 应用程序。正如错误消息所示,当环境不包含有关信息FLASK_APP(例如 website.py 的 FLASK_APP="website")时,就会发生这种情况。您可以通过设置环境变量或直接使用 python 来解决此问题。

对于环境变量可以使用(对于 website.py)来解决这个问题:FLASK_APP="website" flask run。对于 Windows,请参阅 Sync 的评论。

使用 python 时,您应该依赖__name__app.run() 作为开发服务器。添加底部部分后,您可以直接使用以下命令调用脚本python3

from flask import Flask

app = Flask(__name__)

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)

if子句确保app.run()仅在直接执行脚本时调用,而不是在app从其他脚本导入时调用。

注意:如果没有MRE,就很难为您提供帮助。