def init(loop): yield from ORM.create_pool(loop=loop, **configs.db) app = web.Application( loop=loop, middlewares=[logger_factory, auth_factory, response_factory]) init_jinja2(app, filters=dict(datetime=datetime_filter)) add_routes(app, 'handlers') add_static(app) srv = yield from loop.create_server(app.make_handler(), '127.0.0.1', 9000) logging.info('server started at http://127.0.0.1:9000...') return srv
async def init(loop): await orm.create_pool(loop=loop, **configs.db) # middlewares(中间件)设置3个中间处理函数(都是装饰器) # middlewares中的每个factory接受两个参数,app 和 handler(即middlewares中的下一个handler) # 譬如这里logger_factory的handler参数其实就是auth_factory # middlewares的最后一个元素的handler会通过routes查找到相应的,其实就是routes注册的对应handler # 这其实是装饰模式的典型体现,logger_factory, auth_factory, response_factory都是URL处理函数前(如handler.index)的装饰功能 app = web.Application( loop=loop, middlewares=[logger_factory, auth_factory, response_factory]) init_jinja2(app, filters=dict(datetime=datetime_filter)) # 添加URL处理函数, 参数handlers为模块名 add_routes(app, 'handlers') # 添加CSS等静态文件路径 add_static(app) # 启动 srv = await loop.create_server(app.make_handler(), '127.0.0.1', 9000) logger.info('server started at http://127.0.0.1:9000 ........') return srv
async def init(loop): await orm.create_pool(loop = loop, **configs.db) # middlewares(中间件)设置3个中间处理函数(都是装饰器) # middlewares中的每个factory接受两个参数,app 和 handler(即middlewares中的下一个handler) # 譬如这里logger_factory的handler参数其实就是auth_factory # middlewares的最后一个元素的handler会通过routes查找到相应的,其实就是routes注册的对应handler # 这其实是装饰模式的典型体现,logger_factory, auth_factory, response_factory都是URL处理函数前(如handler.index)的装饰功能 app = web.Application(loop=loop, middlewares=[ logger_factory, auth_factory, response_factory ]) init_jinja2(app, filters = dict(datetime = datetime_filter)) # 添加URL处理函数, 参数handlers为模块名 add_routes(app, 'handlers') # 添加CSS等静态文件路径 add_static(app) # 启动 srv = await loop.create_server(app.make_handler(), '127.0.0.1', 9000) logging.info('server started at http://127.0.0.1:9000 ........') return srv