2016-12-24 9 views
0

URL値がdictから来た場合、画像を表示する際に問題が発生します。テンプレートのdictからのURLを使用して静止画像を表示する

もし私がそれを動作させると動作します。

{% for key, values in images.images.items %} 
    <div class="imageBox"> 
     <img src="{% static 'images/ka/1.jpg' %}" alt="My image" width=100% height=100%/> 
    </div> 
{% endfor %} 

しかし、代わりにdict反復のURL値を使用したいと思います。

{% for key, values in images.images.items %} 
    <div class="imageBox"> 
     <img src="{% static '{{values}}' %}" alt="My image" width=100% height=100%/> 
    </div> 
{% endfor %} 

{{values}} = 'images/ka/1.jpg' 

以下のようなしかし、たとえ{{values}}カントーこのdosen't作業は、前の例のように'images/ka/1.jpg'です。ブラウザでhtmlを調べると、srcが/static/%7B%7B%20values%20%7D%7Dであることがわかります。なぜ違うのですか?

答えて

2

あなたは{{ }}{% static %}内部タグは必要ありません。 試用:

{% for key, values in images.images.items %} 
    <img src="{% static values %}"> 
{% endfor %} 

これは動作するはずです。

+1

それはそれでした!私はそれを試していないと信じられない。ありがとう:) – vandelay

1

あなたはそうのようなget_static_prefixテンプレートタグを使用することができます。

<img src="{% get_static_prefix %}{{ values }}" alt="My image" width=100% height=100%/> 

get_static_prefixはあなたのSTATIC_URLで指定したパスでテンプレート変数に移入されます。

リファレンスget_static_prefix

+0

これは私に 'get_static_prefix'を与え、 'empty'または 'endfor'を期待します。このタグを登録または読み込むのを忘れましたか?設定で何かを変更する必要がありますか? – vandelay

+0

その後に 'for'ループを終了しましたか? –

+0

また、あなたのページの上部に '{%load static%}'が必要です –

関連する問題