Django的。自定义标签

时间:2015-02-14 17:16:33

标签: django

我想在自定义标记中显示对象中的所有元素

@register.simple_tag
def user_wszyscy1(lang=None):
    sale = Sala.objects.all()
    if lang:
        sale = sale.filter(wybrany_jezyk=lang)
    return sale

如何显示模板文件中的所有元素?

我尝试使用for循环:

Sale to:
{% for user_wszyscy1 in user_wszyscy1 %}

{{sale}}

{%endfor %}

2 个答案:

答案 0 :(得分:0)

您需要assignment tag,而不是简单的标记。

答案 1 :(得分:0)

你最好像这样创建标签

@register.simple_tag
def user_wszyscy1(sale, lang):
    if lang:
        sale = sale.filter(wybrany_jezyk=lang)
    return sale

并像这样使用它:

Sale to:
{% for sala in sale|user_wszyscy1:"pl" %}

{{sale}}

{% endfor %}

sale已经在您的上下文中,在模板标记中从模型中检索数据并不好,应该在context_processors中的视图中完成。