【问题标题】:How to read a table from database at pyramid application startup?如何在金字塔应用程序启动时从数据库中读取表?
【发布时间】:2020-07-06 09:14:16
【问题描述】:

我有一个pyramid 游戏服务器应用程序,它使用sqlalchemy 读取/写入postgres 数据库。我想在创建此应用程序时从数据库中读取某个表(称为games)。这个games 数据将被我的一个wsgi middleware 使用,它被挂在应用程序中,以发送statsd 指标。为此,我在我的应用程序的主要功能中添加了一个订阅者,例如:

config.add_subscriber(init_mw_data, ApplicationCreated)

现在,我想在以下函数中读取games 表:

def init_mw_data(event):
    ...
    ...

有人知道我如何在函数init_mw_data 中读取games 表吗?

【问题讨论】:

    标签: sqlalchemy pyramid


    【解决方案1】:

    它基于您配置应用程序的方式。 pyramid-cookiecutter-starter 的默认 sqlalchemy 模板有 dbsession_factory

    所以,你可以这样做:

    def init_mw_data(event):
         registry = event.app.registry
         dbsession = registry['dbsession_factory']()
         dbsession.query(...)
         ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-10
      • 2013-01-19
      • 1970-01-01
      • 1970-01-01
      • 2012-06-09
      • 2020-10-17
      • 1970-01-01
      • 2015-03-20
      相关资源
      最近更新 更多