我想学习Flask使用VScode。

那我下面的教程:Python Flask教程:Full-Featured Web应用程序第1部分 - 入门

我做了以下几件事:

  1. 创建使用文件夹中的一个新的virtualenv:virtualenv venv
  2. 激活它:venv\Scripts\activate(我在Windows 10)

在那之后,我创建使用mkdir Flask_Blog和它命名为Flask_Blog一个新的目录,我创建了一个包含以下代码的新flaskblog.py文件:

from flask import Flask


app = Flask(__name__)


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

然后,在VScode的终端,我为了在使用cd Flask_BlogFlask_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工作?

分析解答

问题VsCode募集

在PowerShell中,你必须设置FLASK_APP环境变量,如下所示:

$env:FLASK_APP = "webapp"

然后,你应该能够运行"python -m flask run"的hello_app文件夹内。换句话说,PowerShell的管理环境变量不同,所以标准command-line "set FLASK_APP=webapp"将无法正常工作。