manage.py 是组织/编写 Flask 应用程序的正确方法吗?

Jam*_*eux 5 python flask gunicorn

首先让我说我问这个问题很愚蠢,因为我找不到我前段时间读过的线程/文章提供了不使用 manage.py 的原因。

我最近推出了一个网络应用程序,但我真的很难从 转换manage.py runservergunicorn app:app格式。我做错什么了吗?它应该是轻而易举的,这是这样做的方式吗?

我想我真正要问的是:关于manage.py runserver等,编写应用程序然后将其设置为使用(比如说,gunicorn)进行部署的正确方法是什么?

如果有人对我的问题感到困惑,请问我,因为我真的很想得到这个答案,因为我计划在不久的将来构建另一个应用程序。提前致谢!

dav*_*ism 4

manage.py是 Web 框架中的一个常见概念。它用于运行命令并启动开发服务器。Flask-Script 扩展为 Flask 提供了这个功能。

最简单的“管理”脚本只是导入应用程序实例(或从工厂创建一个实例并运行它,或者在应用程序上下文中运行另一个命令。

from my_app import app
app.run()
# or for custom commands
with app.app_context():
    do_command()
Run Code Online (Sandbox Code Playgroud)

Flask-Script 做了更多的事情,但最终归根结底就是这些。现在应该很明显,他们gunicorn my_app:app正在做同样的事情。Gunicorn 不是运行开发服务器,而是一个生产应用程序服务器,使用与开发服务器相同的应用程序实例。