0

xと言うdjangoテンプレートに出力する整数値があるとします。x回続けて印刷したい写真もあります。この画像をテンプレートにx回出力するにはどうすればよいですか?

4

2 に答える 2

1

これを行うための迅速ですが醜いハックは、make_listフィルターを使用することです。

{% for i in "xxxx"|make_list %}
    {{ image_html }}
{% endfor %}

これにより、画像が4回印刷されます(文字列には4文字あるため)。

よりクリーンな方法は、以下を使用してリストをテンプレートに渡すことrange()です。

context['image_print_range'] = range(1, 5)
...
{% for i in image_print_range %}
    {{ image_html }}
{% endfor %}

別の解決策(おそらく最もクリーンなもの)は、カスタムテンプレートタグまたはフィルターです。例:

@register.simple_tag
def print_multiple(value, count):
    """Print a value multiple times."""
    return ' '.join([value] * count)

そしてあなたのテンプレートで:

{% print_multiple "foobar" 4 %}
于 2012-06-25T12:18:09.100 に答える
1

ビューのリストにx回追加して{% for %}タグで反復処理するか、カスタムテンプレートタグを作成して画像のURLをx回繰り返します。

于 2012-06-25T03:36:19.010 に答える