我在Windows上,使用git bash。 如果 Flask 不在开发模式下,我可以运行它。如果我FLASK_ENV设置为"开发"以尝试触发调试和其他有用的事情,那么flask run
失败。
错误消息非常奇特。
$ flask run
* Serving Flask app "Neuroethics_Behavioral_Task" (lazy loading)
* Environment: development
* Debug mode: on
* Restarting with stat
d:miniconda3python.exe: No module named D:miniconda3Scriptsflask
奇怪的是...在目录 D:\miniconda3\Scripts 中,有一个烧瓶.exe或烧瓶应用程序文件。 通过输入"where flask",我返回D:miniconda3Scriptsflask.exe
。所以这个可执行文件肯定存在于他们试图寻找的位置,但即便如此,当我尝试运行烧瓶时,Flask 似乎也找不到它。
我该如何处理?
编辑:更多信息。这似乎与我之前在 Anaconda 中安装了 Flask 的事实有关,使用 conda 卸载烧瓶将其从 anaconda 中删除,然后我用 pip 安装了它。
where flask
给D:miniconda3Scriptsflask.exe
但pip show flask
给了Location: d:miniconda3libsite-packages
.然而,pip提供的位置不包含任何烧瓶.exe文件。
建议使用flask run
命令,但目前 Windows 上的 Werkzeug 存在问题。在修复错误之前,请参阅 Flask 重装器崩溃并显示"没有名为 Scripts\flask 的模块"以获取解决方法。
如果您不想使用该解决方法,可以添加if __name__ == "__main__"
块并直接调用app.run(debug=True)
,以python app.py
方式运行它。同样,这不是运行 Flask 的推荐方法,该错误还有另一种解决方法。
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run(debug=True)