Djangoモデルフィールドにcolor_paletteというタプルのリストがあります。画像からの5つのRGBカラー値のセット。Djangoモデルフィールドにはタプルのリストが含まれています - テンプレートで解凍する方法
[(29, 28, 28),
(239, 244, 244),
(158, 165, 172),
(89, 162, 203),
(106, 141, 169)]
他のモデルフィールドと一緒にこれらのテンプレートをアンパックする必要があります。
{% for screenshot in country.screenshots_set.all %}
{{ screenshot.color_palette }}
<img src="{{ screenshot.thumbnail.url }}" alt="{{ country.name }}" class="thumbnail" width="150" height="150" style="border:none;"/>
{% endfor %}
をまだテンプレートでそれらを解凍する方法を考え出したていない:
{% for screenshot in country.screenshots_set.all %}
<img src="{{ screenshot.thumbnail.url }}" alt="{{ country.name }}" class="thumbnail" width="150" height="150" style="border:none;"/>
{% endfor %}
私が使用して、テンプレートに表示するタプルのリスト全体を取得することができます。
私は、リストの文字
<ul>
{% for color in screenshot.color_palette %}
<li>{{ color.0 }}</li>
<li>{{ color.1 }}</li>
<li>{{ color.2 }}</li>
<li>{{ color.3 }}</li>
<li>{{ color.4 }}</li>
{% endfor %}
</ul>
と、リスト内のすべての文字で分割が発生し、この試みに分割され、この試みている:
<ul>
{% for color in screenshot.color_palette %}
<li>{{ color }}</li>
{% endfor %}
</ul>
は私がしようとしています。このことも可能な方法ですがそれをするために?
私にとってはうまくいかないタプルを解くための解法は、ビューで生成され、テンプレートに送られるリストのためのものです。
私は反復しようとしているものが文字列であり、ビューは反復可能なオブジェクトを送信するためです。
あなたのモデルを投稿できますか? –
テンプレートに渡される 'color_palette'は文字列であり、タプルのリストではありません。コンテキストを生成しているコードを投稿し、実際に文字列ではなくリストであることを確認できますか? – solarissmoke
ああ。希望的思考。はい、color_paletteフィールドはテキストデータ型です。私はそれがタイプリストであることができるかどうかを見なければならないと思う。これを行うための他の方法はありますか? – curtisp