错误:在VSCode中找不到Flask应用程序

时间:2019-10-10 09:51:56

标签: python flask visual-studio-code

我正在尝试使用VScode学习Flask

我要关注的教程是:Python Flask Tutorial: Full-Featured Web App Part 1 - Getting Started

我做了以下事情:

  1. 使用virtualenv venv
  2. 在文件夹中创建新的virtualenv
  3. 将其激活为:venv\Scripts\activate(我在Windows 10上)

此后,我使用Flask_Blog创建了一个名为mkdir Flask_Blog的新目录,并在其中创建了一个包含以下代码的新flaskblog.py文件:

from flask import Flask


app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello'

然后,在VScode的终端中,我更改了工作目录,以便使用Flask_Blog进入cd Flask_Blog目录。

现在,当我执行set FLASK_APP=flaskblog.py后接着执行flask run时,出现以下错误:

(venv) PS C:\Users\kashy\OneDrive\Desktop\Flask\Flask_Blog> flask run
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
Usage: flask run [OPTIONS]

Error: Could not locate a Flask application. You did not provide the "FLASK_APP" environment variable, and a "wsgi.py" or "app.py" module was not found in the current directory.

但是

当我在cmd提示符下执行相同操作时,代码将运行,并且可以看到输出。

我对此完全陌生。谁能告诉我我在VSCode中犯什么错误,为什么它在cmd中起作用?

2 个答案:

答案 0 :(得分:2)

Issue raised in VsCode

在Powershell下,您必须按如下所示设置FLASK_APP环境变量:

$env:FLASK_APP = "webapp"

然后,您应该可以在hello_app文件夹中运行“ python -m flask run”。换句话说,PowerShell以不同的方式管理环境变量,因此标准命令行“ set FLASK_APP = webapp”将不起作用。

答案 1 :(得分:0)

尝试设置 FLASK_APP = 文件夹/文件名.py 的完整路径。

这对我有用