Экспериментирую с торнадо в качестве асинхронного драйвера для монги пытаюсь использовать motor. Мой код:
class Application(tornado.web.Application):
def __init__(self):
db_name = config['database']['name']
self.db = motor.MotorClient(config['database']['host'], config['database']['port'])[db_name]
settings = dict(
template_path=os.path.join(os.path.dirname(__file__), "templates"),
static_path=os.path.join(os.path.dirname(__file__), "static"),
debug=True,
autoescape=None
)
tornado.web.Application.__init__(self, url_patterns, **settings)
Сам обработчик (хочу при вызове страницы писать тестовую запись в монгу):
class MainHandler(tornado.web.RequestHandler):
def get(self):
doc={'who': 'data who'}
self.application.db.insert(doc, callback=self.some_function)
Но получаю ошибку:
TypeError: MotorCollection object is not callable. If you meant to call the 'insert' method on a MotorCollection object it is failing because no such method exists.