首页 > 解决方案 > 将不同的可调用对象传递给 uWSGI 而不是烧瓶应用程序对象

问题描述

我第一次为我的烧瓶应用程序实现 uWSGI。

在启动烧瓶应用程序之前需要进行大量配置。除了将 uWSGI 传递给我相信它调用 app.run 的 app 对象之外,是否可以传递一个单独的可调用对象,一个设置配置然后调用 app.run() 本身的方法?

例如。我看到的每一件事都设置了入口点,例如:

from ... import app

if __name__ == "__main__":
   ...

我想知道我是否可以做类似的事情

from ... import app

def setup():
   app.run(...)


if __name__ == "__main__":
   ...

并告诉 uWSGI 运行setup而不是应用程序。

谢谢!

标签: pythonflaskuwsgi

解决方案


如果我没记错的话,uwsgi 会想要调用.run()。您可以通过设置配置值来更改该内容。module例如

--module myapp:foobar

所以 uwsgi 调用foobar.run()。不过,不确定这是一个巨大的胜利。一种常见的方法是使用您喜欢的任何子类,然后,最后可以分配:

app = foobar

于是 uwsgi 愉快地调用app.run()


推荐阅读