Django テンプレート 使用 #3 List Dictの表示
Djangoのテンプレートで、ListやDictを表示する方法です。
今回の話のベースは以下の資料を実施した直後という前提で書きます。
まずはViewでListとDict型を返す定義
polls/views.pyを以下のように編集。
from django.http import HttpResponse
from django.template import loader
def index(request):
template = loader.get_template('polls/index.html')
context = {
'list_data' : ['list1','list2','list3'],
'dict_data' : {'dict1':'data1','dict2':'data2','dict3':'data3'}
}
return HttpResponse(template.render(context, request))
テンプレートを編集
{% if hoge_data %}
ほげでーたが見つかりました<p/>
{% else %}
ほげでーたが見つかりませんでした</p>
{% endif %}
{% if list_data %}
<ul>
{% for data in list_data %}
<li>{{data}}
{% endfor %}
</ul>
{% endif %}
{% if dict_data.dict1 %}
dict_data.dict1 = {{ dict_data.dict1 }} <p/>
{% endif %}
{% if dict_data.dict2 %}
dict_data.dict2 = {{ dict_data.dict2 }} <p/>
{% endif %}
{% if dict_data.dict3 %}
dict_data.dict3 = {{ dict_data.dict3 }} <p/>
{% endif %}
if ~ endif構文を使って全て値があるかチェックしていますが、必ず渡ってくる値ならチェックする必要はありません。
今回はテストで、こんな感じで書きますよ…と、少し過剰に書きました。
結果
こんな感じで表示されます。
ほげでーたが見つかりませんでした
list1
list2
list3
dict_data.dict1 = data1
dict_data.dict2 = data2
dict_data.dict3 = data3
関連記事
おすすめ記事
Django Adminのパスワードを忘れたら? - Python
Django Ajaxで非同期通信
Django チーター#1 - Python
Netlify、リダイレクト設定、Webserverレイアウト変更
Django テンプレート 使用 #1
Django 目次 - Python
Supponsered
外部サイト ↓プログラムを学んでみたい場合、学習コースなどもおすすめです!
Title : Photo by Steve Johnson on Unsplash