这与“ -m开关的目的是什么”不同,因为我正在谈论一个独立运行的功能(烧瓶),并且想知道为什么它与-m不同。那里的答案不能解决问题。
我正在构建一个Flask应用程序。设置了代码的子目录,所以
setup.py
gallery/
__init.py__
models.py
view.py
当我使用“ python -m flask run”运行它时,它可以工作。当我像“烧瓶运行”一样运行它时,它不是。我一直找不到任何人知道这两个命令之间的实际区别,所以我有点受阻。
这是“烧瓶运行”的输出:
(venv)MacBook-Pro-4:Finished khunter$ export FLASK_APP=gallery
(venv)MacBook-Pro-4:Finished khunter$ flask run
Usage: flask run [OPTIONS]
Error: The file/path provided (gallery) does not appear to exist. Please
verify the path is correct. If app is not on PYTHONPATH, ensure the
extension is .py
是否有任何关于差异在哪里的想法,以便我可以适当地使用“烧瓶运行”?
编辑:看来我可以通过pip install --editable来完成此操作,以获取我在那里的setup.py。
答案 0 :(得分:0)
没有太多区别。运行python -m flask run
时,您正在运行flask/__main__.py
。
运行flask run
时,您正在运行flask/cli.py
。
如您所见,第一个只是第二个的别名。尽管它通过了as_module == True
。评论中显示了需要对其进行额外处理的原因。您可以自己检查。
我相信您的问题是由路径问题引起的。仔细检查您的路径是否正确。