如何从自定义模板标记中获取模板变量

时间:2018-05-03 08:06:00

标签: python django templates

在Django中,有没有办法让自定义模板标签可以访问视图传递的当前模板的变量?

我的第一个想法是创建一个参数,用户可以手动放置模板变量,但如果我的自定义模板标签可以访问变量本身,那就更好了!

为了说明,我想摆脱参数templatevar

@register.simple_tag
def sampletag(templatevar):
    return templatevar

1 个答案:

答案 0 :(得分:3)

您可以将takes_context参数用于装饰器。

@register.simple_tag(takes_context=True)
def sampletag(context):
    return context['templatevar']

请参阅template tags documentation