[Django] テンプレートforタグで奇数、偶数を判断する
移転しました。
Django0.97_pre では、テンプレートforタグで奇数、偶数を判断することができない。
このためテーブルの行を繰り返す時に、class指定を変えて行変更するときに不便だ。
以下のようにDjangoソースを直すと、簡単に奇数、偶数を判断できて便利。
本家のMLに、追加要望だしてみようか。。
修正箇所
Django-0.97-pre/trunk/django/template/defaulttags.py 131 for i, item in enumerate(values): 132 # Shortcuts for current loop iteration number. 133 loop_dict['counter0'] = i 134 loop_dict['counter'] = i+1 135 # Reverse counter iteration numbers. 136 loop_dict['revcounter'] = len_values - i 137 loop_dict['revcounter0'] = len_values - i - 1 138 # Boolean values designating first and last times through loop. 139 loop_dict['first'] = (i == 0) 140 loop_dict['last'] = (i == len_values - 1) 141 # 以下追加★★★★★ 142 loop_dict['odd'] = ((i % 2) == 1)
使い方
{% for msg in latest_list %} <tr class="{% if forloop.odd %}even{% else %}odd{% endif %}"> <td>{{msg.send_date}}</td> <td>{{msg.title}}</td> </tr> {% endfor %}