我有一个pyramid
游戏服务器应用程序,该应用程序使用sqlalchemy
读取/写入postgres
数据库。我想在创建此应用程序时从数据库中读取某个表(称为games
)。此games
数据将由挂在应用程序中的我的wsgi middleware
之一使用,以发送statsd
指标。为此,我在应用的主要功能中添加了一个订阅者,例如:
config.add_subscriber(init_mw_data, ApplicationCreated)
现在,我想在以下功能中读取games
表:
def init_mw_data(event):
...
...
任何人都知道我如何在函数games
中读取init_mw_data
表?
基于您配置应用程序的方式。pyramid-cookiecutter-starter
中的默认sqlalchemy模板具有dbsession_factory
。
因此,您可以执行以下操作:
def init_mw_data(event):
registry = event.app.registry
dbsession = registry['dbsession_factory']()
dbsession.query(...)
...