我可以知道在 Flask 中正在执行哪个 CLI 命令吗?

5 python flask

我只想在使用某个命令来启动 Flask 应用程序时调用一个函数。即,如果 CLI 命令是“initdb”,我不想调用该函数:

烧瓶初始化数据库

但我想在命令“运行”时调用它:

烧瓶运行 --host=0.0.0.0

有没有办法知道用什么命令烧瓶?

附注。我正在查看flaskr代码并仅在使用“run”调用flask时才尝试启动Process()。

Bre*_*mes 0

我认为你不能。解决此问题的一种方法是创建环境变量。

运行flask程序时,您可以分配一个环境变量,然后检查它是否正确。

SOME_VARIABLE=initdb flask run
Run Code Online (Sandbox Code Playgroud)

然后在代码定义中您将引用该变量:

if os.environ['SOME_VARIABLE'] == 'initdb':
    ....
else:
    ....
Run Code Online (Sandbox Code Playgroud)

您将无法使用“运行”一词作为环境变量,但我认为无论如何这都会令人不悦。