tornado反向解析
在路由中添加name
属性,并且不能使用元组路由,应当由tornado.web.url
定义路由.
app = tornado.web.Application([
(r'/', IndexHandler),
tornado.web.url(r'/huck', index.HuckHandler, {"key1":"value1", "key2":"value2"}, name="home")
]
)
Handler代码
class HuckHandler(RequestHandler):
def initialize(self, key1, key2):
self.key1 = key1
self.key2 = key2
def get(self, *args, **kwargs):
print("这是参数,在这个例子里无特殊意义",self.key1, self.key2)
url = self.reverse_url("home")
self.write("<a href='%s'>回到主页</a>"%url)
关键函数
self.reverse_url("home")
上面例子会获取到name为home的路由的正则匹配