Python的Tornado框架配置使用Jinja2模板引擎

jinja2是人气web框架flask中的内置模板引擎,而且与django的模板引擎比较类似,这里我们就来看一下为python的tornado框架配置使用jinja2模板引擎的方法

tornado 默认有一个模板引擎但是功能简单(其实我能用到的都差不多)使用起来颇为麻烦, 而jinja2语法与django模板相似所以决定使用他.

下载jinja2

还是用pip 下载(用的真是爽)

pip install jinja2

登录后复制

立即学习“Python免费学习笔记(深入)”;

这样就可以使用了.

tornado与jinja2 整合

tornado和jinja2整合起来很简单(其实是网上找的比较简单), 不知道从那里找到的反正找到了,不说了直接上代码

#coding:utf-8import tornado.webfrom jinja2 import Environment, FileSystemLoader, TemplateNotFoundclass TemplateRendring(object):  """  A simple class to hold methods for rendering templates.  """  def render_template(self, template_name, **kwargs):    template_dirs = []    if self.settings.get('template_path', ''):      template_dirs.append(self.settings['template_path'])    env = Environment(loader=FileSystemLoader(template_dirs))    try:      template = env.get_template(template_name)    except TemplateNotFound:      raise TemplateNotFound(template_name)    content = template.render(kwargs)    return content # 就是重新写 BaseHandler 由jinja2模板渲染class BaseHandler(tornado.web.RequestHandler, TemplateRendering):  """  Tornado RequestHandler subclass.  """  def initialize(self):    pass  def get_current_user(self):    user = self.get_secure_cookie('user')    return user if user else None  def render_html(self, template_name, **kwargs):    kwargs.update({      'settings': self.settings,      'STATIC_URL': self.settings.get('static_url_prefix', '/static/'),      'request': self.request,      'current_user': self.current_user,      'xsrf_token': self.xsrf_token,      'xsrf_form_html': self.xsrf_form_html,    })    content = self.render_template(template_name, **kwargs)    self.write(content)

登录后复制

立即学习“Python免费学习笔记(深入)”;

这样就可以在tornado中替换self.render为self.render_html了.

更多Python的Tornado框架配置使用Jinja2模板引擎相关文章请关注PHP中文网!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2278525.html

(0)
上一篇 2025年2月27日 16:50:36
下一篇 2025年2月19日 05:43:00

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论