非常感谢提交PR
的朋友:@lichao0x7cc。
笔者比较喜欢Flask
框架route
风格的URL
路由,Tornado
框架中URL
路由是指定tornado.web.Application
的参数,很不Pythonic
,所以笔者为Tornado
框架编写了Flask
风格蓝图小玩具。
现阶段支持的功能:
- 支持
Blueprint
的prefix
参数。 - 支持
Blueprint.route
方法的methods
参数,限定客户端HTTP Methods
。 - 支持
Blueprint.errorhandler
方法,指定蓝图的错误处理方法。 - 支持
/<int:id>/, <float:id>, <uuid:uuid>
等Flask
风格的URI
,兼容Tornado
正则表达式风格URL
。 - 支持
Flask
框架的url_for
函数,使用RequestHandler
的__endpoint__
属性指定endpoint
名称,未指定则默认为__class__.__name__
。
注意: TornadoBlueprint
已上传至Python
官方PYPI
服务器,可通过pip
命令直接安装,当前最新版本为0.2.8
。
pip install tornadoblueprint==0.2.8
注意: TornadoBlueprint
示例代码如demo.py所示。