我刚刚开始学习Flask,但是我一直在设置Flask。我不知道如何设置环境变量。每当我使用Flask run命令时,都会遇到以下情况。我做了很多Google搜索来设置Windows上的环境变量,但是我找不到并且有时无法理解解决方案。这该怎么做 ?如何获取“ app.py”或“ wsgi.py”?请帮忙。
命令:烧瓶运行
错误消息:无法找到Flask应用程序。您未提供“ FLASK_APP”环境变量,并且在当前目录中找不到“ wsgi.py”或“ app.py”模块。
答案 0 :(得分:1)
我不认为“ flask run”命令会在此处导致错误。
我收到相同的消息错误,问题出在我复制/粘贴了文档中编写的set FLASK_APP
和$env: FLASK_APP
命令的事实。我必须在'>'或'='之前和之后添加空格,然后一切正常。
示例:此命令'C:\path\to\app>set FLASK_APP=hello.py'
无效,但'C:\path\to\app > set FLASK_APP = hello.py'
有效。
也许是您遇到了同样的问题?
答案 1 :(得分:1)
您需要提供一个应用程序环境。因此Flask需要知道.py
文件才能运行。
尝试运行该命令
export FLASK_APP=application.py
其中application.py
-在我的情况下,您的Flask应用的名称是application.py。
之后
flask run
答案 2 :(得分:1)
Windows PowerShell
set FLASK_APP=hello.py
$env:FLASK_APP = "hello.py"
flask run
答案 3 :(得分:1)
您实际上需要从Windows命令行运行它,而不是像Visual Studio Code这样的内置命令行。从Windows命令行在正确的目录中运行这些命令,一切正常。
这会造成问题的原因-Visual Studio Code为您的命令行创建了Powershell环境。您可以在VSC环境中使用推荐的$ env:FLASK_APP =“ your_app.py”,它也可以使用。
有点晚了,但我希望这对其他人有帮助!
答案 4 :(得分:1)
我的错误也相同,但是幸运的是我能够解决它。在这里,
D:\Development\Projects\Python_Projects\flask_blog>set FLASK_APP=app.py
D:\Development\Projects\Python_Projects\flask_blog>$env:FLASK_APP = "app.py"
D:\Development\Projects\Python_Projects\flask_blog>python -m flask run
答案 5 :(得分:1)
尝试使用 app.py 而不是不同的名称
答案 6 :(得分:0)
如果您使用的是Powershell,请确保在设置环境变量时添加引号:
$env:FLASK_APP = "app.py
然后flask run
应该起作用。
答案 7 :(得分:0)
希望这可以帮助某人, 首先在python虚拟环境中设置烧瓶环境 (用于Windows命令提示符)
<td><button class="pd-setting {{ $barang->stock >= 1 ? 'ready-stock' : 'stock-empty' }}">{{ $barang->stock >= 1 ? 'Ready Stock' : 'Stock Empty' }}</button></td>
然后
set FLASK_ENV = development
(app.py应该是烧瓶应用程序文件)
答案 8 :(得分:0)
我使用了它并且之所以起作用,是因为我在Windows PowerShell中这样做。
$env:FLASK_APP = "app.py"
但是,flask run
并没有给我,所以我无法导入应用程序。
答案 9 :(得分:0)
$>设置FLASK_APP = application.py $>烧瓶运行
答案 10 :(得分:0)
下面提供了逐步解决方案:
转到放置烧瓶应用程序的文件夹(在命令行上)
使用命令($ py -m venv env
创建一个虚拟环境此处'venv'是虚拟环境的简称,最后的'env'代表该环境的名称您想要的(我将其命名为env)。此后,您可以从文件浏览器中看到在上面#1点所述的文件夹中创建了一个名为“ env”的文件夹。
通过按Enter输入以下命令($env\Scripts\activate
),这将打开您的虚拟环境
此后,输入以下命令($set FLASK_APP=<your app name>.py
)
输入以下命令($flask run
)
答案 11 :(得分:0)
当我尝试运行应用程序时出现类似的错误。我必须改变道路。我将目录更改为保存hello.py的文件夹。
(venv) C:\Users\win10\flask-tutorial\myproject>cd venv
(venv) C:\Users\win10\flask-tutorial\myproject\venv>set FLASK_APP=hello.py
(venv) C:\Users\win10\flask-tutorial\myproject\venv>flask run
答案 12 :(得分:0)
set
命令有效,但是要设置环境,需要确保您位于文件所在的正确目录中。例如,如果我的应用程序是hello_world.py
,并且位于venv\hello\hello_world.py
上,则需要在设置set FLASK_APP=hello_world.py
之前确保您在正确的目录中,这是针对Windows的,但是在其他操作系统,则需要使用export
代替set
(venv)C:\ Users \ myProjects \ venv \ hello \ set FLASK_APP = hello_world.py
答案 13 :(得分:0)
我刚刚在 Windows 上遇到了同样的问题,使用命令行。问题是我没有将我的应用程序设置为烧瓶需要运行的应用程序。 所以,就我而言,我首先打开了调试模式(不是必需的,但很方便):
<块引用>设置 FLASK_ENV=development
然后:
<块引用>设置 FLASK_ENV=server.py #where server.py 是我的“应用程序”的名称
最后运行烧瓶:
<块引用>烧瓶运行
答案 14 :(得分:0)
我遇到了同样的问题,对我有用的是不要在 = 符号前后放置空格。
例如: FLASK_APP = flaskblog.py 是错误的,并且可能会因为 = 符号前后的空格而导致错误。
而是尝试 FLASK_APP=flaskblog.py
它对我有用。