在 flask 中的 routes 和 main 之间使用共享变量

Using a shared variable between routes and main in flask

我有一个 python flask 服务器。在我的脚本的 main 中,我从用户那里得到一个变量,它定义了我的服务器模式。我想在 main 中设置此变量(仅 write)并在我的控制器中使用它(仅 read)。我目前正在使用 os.environ,但我正在寻找更灵活的使用方式。

我用谷歌搜索并尝试了以下选项:

  1. flask.g:每次请求都会重置;所以,当它被设置在其他地方时,我不能在控制器内部使用它。
  2. flask.session: 在请求上下文之外无法访问,我无法在主上下文中设置它。
  3. Flask-Session: 和第二项一样,我在main里面设置不了。

main 中使用 app.run(),因此 appmain 中可用。它也应该在所有功能中始终可用,因此您可以尝试使用

app.variable = value

但是烧瓶也有

app.config

保留任何设置。请参阅文档:Configuration Handling