美文网首页
在tornado项目中使用jinja2模板引擎

在tornado项目中使用jinja2模板引擎

作者: 野十六 | 来源:发表于2019-04-08 16:28 被阅读0次

    在tornado项目中使用jinja2模板引擎很容易,只需要在BaseHandler中重写render_string方法。
    具体代码如下:

    import tornado.web
    from jinja2 import Environment, FileSystemLoader
    
    
    class BaseHandler(tornado.web.RequestHandler):
        def render_string(self, template_name, **kwargs):
            template_dirs = []
            template_dirs.append(self.settings['template_path'])
            env = Environment(loader=FileSystemLoader(template_dirs))
            # 这里可以自定义过滤器
            # env.filters['func_name'] = func_name
            kwargs.update({
                'settings': self.settings,
                'static_url': self.static_url,
                'request': self.request,
                'current_user': self.current_user,
                'xsrf_token': self.xsrf_token,
                'xsrf_form_html': self.xsrf_form_html,
            })  
            template = env.get_template(template_name)
            html = template.render(kwargs)
            return html
    

    相关文章

      网友评论

          本文标题:在tornado项目中使用jinja2模板引擎

          本文链接:https://www.haomeiwen.com/subject/nwkpiqtx.html