Tornado模板转义处理的方法

正文

Tornado模板转义处理的方法

2017-02-13 | 作者 : giser

category :

tornado默认是转义所有字符,比较安全,但有时候我们的确需要把字符当做html来解析处理,因此我们需要做些处理。示例:

main.py 代码:

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.render('main.html',title = '<h1>Title</h1>')

application = tornado.web.Application([
    (r"/", MainHandler),
])

if __name__ == "__main__":
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()

main.html 代码:

{{ title }}

执行结果:

默认把h1标签给转义,我们可以这么干使它不要转义

main.html 代码:

{% raw title %}
{{ title }}

raw 是不要转义

执行:

或者在头部这么定义

main.html

{% autoescape None %}
{{ title }}
{{ escape(title) }}

{% autoescape None %} 是整个文件都生效,但可以使用escape转义某一处 执行:

label :
    请 登陆 后进行评论

评论列表 ( 0 )

 



最多关注
近期文章