无法设置烧瓶。如何在Windows中设置环境变量?

时间:2018-07-01 00:16:16

标签: python flask

我刚刚开始学习Flask,但是我一直在设置Flask。我不知道如何设置环境变量。每当我使用Flask run命令时,都会遇到以下情况。我做了很多Google搜索来设置Windows上的环境变量,但是我找不到并且有时无法理解解决方案。这该怎么做 ?如何获取“ app.py”或“ wsgi.py”?请帮忙。

命令:烧瓶运行

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

error message

15 个答案:

答案 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)

下面提供了逐步解决方案:

  1. 转到放置烧瓶应用程序的文件夹(在命令行上)

  2. 使用命令($ py -m venv env创建一个虚拟环境此处'venv'是虚拟环境的简称,最后的'env'代表该环境的名称您想要的(我将其命名为env)。此后,您可以从文件浏览器中看到在上面#1点所述的文件夹中创建了一个名为“ env”的文件夹。

  3. 通过按Enter输入以下命令($env\Scripts\activate),这将打开您的虚拟环境

  4. 此后,输入以下命令($set FLASK_APP=<your app name>.py

  5. 输入以下命令($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
它对我有用。