Я использую функцию перегруппировки Django для группировки по «команде», вот мой код:
{% regroup show_detail.cast_set.all by team as cast_list %}
<ul>
{% for cast in cast_list %}
<li>{{ cast.grouper }}
<ul>
{% for item in cast.list %}
<li>{{ item.name }} </li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
Это отлично работает. Однако cast.grouper - это целочисленное поле с вариантами выбора, обычно я бы делал {{cast.get_team_display}} для отображения текста, а не целого числа. Есть ли способ сделать это с групером? Если это помогает, то что рендеринг сейчас таков:
Что на самом деле должно быть:
- Творческая команда
- В ролях
Фрагмент моей модели для вас, если это поможет.
STARRING = 1
ТВОРЧЕСКИЙ = 2
TEAM_TYPE = (
(CREATIVE, 'Starring'),
(STARRING, 'Creative Team'),
)
name = models.CharField(max_length=200)
team = models.IntegerField(blank=True, null=True, choices=TEAM_TYPE)