我在我的tornado webapp中使用peewee,当我阅读peewee的文档时,我发现:
添加请求 Hook
构建 Web 应用程序时,正确管理数据库连接非常重要。在本节中,我将描述如何向 Web 应用程序添加 Hook 以确保正确处理数据库连接。 这些步骤将确保无论您使用的是简单的 SQLite 数据库还是多个 Postgres 连接池,peewee 都能正确处理连接。
http://docs.peewee-orm.com/en/latest/peewee/database.html
在内部,它告诉Flask Django Bottle如何使用它,除了Tornado的解决方案
不知道 Tornado 有什么简单的方法可以解决这个问题吗?或者这根本不重要?
最佳答案
想法是,您希望在请求开始时打开连接,并在请求完成(返回响应)时关闭连接。
要做到这一点,您似乎可以对 RequestHandler
进行子类化:
from tornado.web import RequestHandler
db = SqliteDatabase('my_db.db')
class PeeweeRequestHandler(RequestHandler):
def prepare(self):
db.connect()
return super(PeeweeRequestHandler, self).prepare()
def on_finish(self):
if not db.is_closed():
db.close()
return super(PeeweeRequestHandler, self).on_finish()
关于python - 如何将 Peewee 与 Tornado 完美结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30872311/