2013-11-27 94 views
1

例如,我重视的Jinja2我的Python的项目,下一个代码(Jinja2 docs):如何将自定义模板标签传递给Jinja2模板类?

from jinja2 import Template 
template = Template(text_of_the_template) 
template.render(**kwargs) 

使用自定义模板标签(从here)的例子:

from jinja2 import contextfunction 

@contextfunction 
def widget(context, template_name, **extra_context): 
    t = jinja_env.get_template('widgets/' + template_name) 
    ctx = dict(context.items()) 
    ctx.update(extra_context) 
    return t.render(ctx) 

jinja_env.globals['widget'] = widget 

# And then in the template: 

{{ widget('last_tweets.html') }} 

如何绑定Jinja2环境和上面的代码(Template类)?

回答

相关问题