【发布时间】:2013-02-01 01:21:58
【问题描述】:
Django 附带了一些用于制作自定义模板标签的好工具。
注册 simple_tag 和 assignment_tag 都解析传入的令牌内容并将它们转换为 args, kwargs 正确解析为它们的引用(比如传入了一个变量)。
有没有一种简单的方法可以将此行为添加到常规标记中?
我需要使用parser 对象,所以我需要使用常规标签,但似乎我正在费力地编写大量代码来重现args, kwargs 解析器。
@register.tag(name='snippet')
def snippet_with_defaults(parser, token):
bits = token.split_contents()[1:]
bits # bits needs to be converted to args, kwargs easily
我需要一个这样的标签:
{% snippet foo=bar bar=baz %}
This is a glorious django template tag!
{% endsnippet %}
这似乎是一个常见的问题(用于标记参数的 args、kwargs 解析器),它应该有一个 django sn-p 或其他东西!
【问题讨论】: