Rud*_*koŭ 4 python database asynchronous tornado
我正在阅读龙卷风文档。我想与数据库建立持久连接(在应用程序生命周期内建立连接),并从数据库异步返回数据。最好的地方在哪里?
def initialize ?__init__方法?def prepare?你能提供一些例子吗?
最简单的事情就是使数据库连接对象成为模块级别的全局变量。请参阅电机文档中的以下示例:
db = motor.motor_tornado.MotorClient().test_database
application = tornado.web.Application([
(r'/', MainHandler)
], db=db)
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()
Run Code Online (Sandbox Code Playgroud)
RequestHandlers可以直接使用全局变量。另外,将数据库作为db关键字参数传递给Application使其可以在其“设置”字典中请求处理程序:
class MainHandler(tornado.web.RequestHandler):
def get(self):
db = self.settings['db']
Run Code Online (Sandbox Code Playgroud)
这可能使从其他文件中定义的RequestHandlers访问数据库对象更加容易。
| 归档时间: |
|
| 查看次数: |
1014 次 |
| 最近记录: |