これを読みましたが、もう 1 つ質問があります。テンプレートで country.grouper の名前を変更するにはどうすればよいですか? 曜日を「グループ化」します-week_days.grouper、1、2、3などですが、テンプレートで変更したい-日曜日、月曜日など.どうすればいいですか?
1 に答える
1
ここでは、カスタム テンプレート タグが役立ちます。my_custom_filters.py
これは、たとえばアプリの templatetags というフォルダー内のファイルに配置する必要があります。
from django import template
register = template.Library()
def get_weekday(value):
"""returns the weekday for the given number - 0 indexed"""
wd_list = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
return wd_list[int(value)]
このカスタム フィルターは次のように使用されます。
{% load my_custom_filters %}
{% regroup day by weekdays as weekday_list %}
<ul>
{% for day in weekday_list %}
<li>{{ day.grouper|get_weekday }}
<ul>
{% for item in day.list %}
<li>{{ item.name }}: {{ item.population }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
日付オブジェクトを使用している場合は、組み込みの日付テンプレート タグを使用して、日付を対応する曜日に変換できます。
{% regroup day by weekdays as weekday_list %}
<ul>
{% for day in weekday_list %}
<li>{{ day.grouper|date:"w" }}
<ul>
{% for item in day.list %}
<li>{{ item.name }}: {{ item.population }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
于 2012-10-20T20:13:36.787 に答える