我正在尝试使用VScode学习Flask
。
我要关注的教程是:Python Flask Tutorial: Full-Featured Web App Part 1 - Getting Started。
我做了以下事情:
virtualenv venv
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
中起作用?
答案 0 :(得分:2)
在Powershell下,您必须按如下所示设置FLASK_APP环境变量:
$env:FLASK_APP = "webapp"
然后,您应该可以在hello_app文件夹中运行“ python -m flask run”。换句话说,PowerShell以不同的方式管理环境变量,因此标准命令行“ set FLASK_APP = webapp”将不起作用。
答案 1 :(得分:0)
尝试设置 FLASK_APP = 文件夹/文件名.py 的完整路径。
这对我有用