使用flask admin设置配置参数

时间:2016-09-04 15:22:53

标签: flask flask-admin

正如标题所说,我有一个小型的网络应用程序,没有使用数据库和模型。

我想让界面更改一些Flask自己的配置参数,并认为flask-admin可以快速将我带到那里。这很容易吗?

1 个答案:

答案 0 :(得分:1)

在启动应用程序后,您通常无需重新启动服务器即可更改配置。

  1. 应用程序(至少在生产中)将提供多个进程,甚至可能在多个服务器上。对配置的更改只会影响处理请求的进程,直到其他进程被重新启动并重新启动。即使这样,他们也可能在阅读配置后的一段时间内进行分叉。
  2. 扩展程序与读取配置的方式不一致。有些人从... 每个请求中读取配置。有些人只在current_app期间阅读并存储了自己的副本,因此更改配置不会更改其副本。
  3. 即使每次都读取配置,某些配置也无法更改,或者也需要其他步骤。例如,如果更改数据库,则应该确保还关闭与旧数据库的所有连接,配置对此一无所知。另一个例子,您可以更改调试模式,但它不会做任何事情,因为大多数日志记录都是提前设置的。
  4. Web应用程序可能不是唯一依赖于配置的东西,因此即使您可以在配置更改时自动重新启动它,您也需要重新启动Celery等相关服务。这些服务可能位于完全不同的计算机上,也可能位于不同的用户之上。

    配置通常存储在Python文件中,因此您需要创建可以转储有效Python代码的串行器,或者为不同格式编写配置加载器。

    Flask-Admin可能可用于创建用于编辑配置的用户界面,但它不会帮助解决任何这些问题。

    在启动应用程序后尝试更改init_app并不值得。它不是为此而设计的。如果您需要这些配置,则专门为您需要的配置设计配置系统,但不要期望能够通常更改Flask.config