Проблемы с Django Templatetag `regroup`
При использовании тега шаблона regroup
я столкнулся с проблемой, когда Queryset выдавал пустой список ([]
) в качестве результата.
Аналогичный Queryset (например, Set с теми же столбцами и фильтрами, однако одно значение фильтра отличалось) работал совершенно нормально.
Мой запрос выглядит следующим образом:
GraZeichen.objects.filter(gtid__id=gtid).values("id", "findno").exclude(findno=None, formid=0).annotate(values_id=GroupConcat(
"formid", separator=',')).annotate(values_en=GroupConcat("fombez_en", separator=','))
и мой Шаблон выглядит следующим образом:
{% regroup zeichen|dictsort:'values_de' by values_en as zeichen_by_val %}
{% for valgroup in zeichen_by_val %}
{{ valgroup.grouper }} ({{ valgroup.list|length }})
<div>
{% for zeichen in valgroup.list %}
<div>
<a href="alink">
<img ...>
</a>
</div>
{% endfor %}
</div>
{% endfor %}
Как я уже сказал, он прекрасно работает для некоторых gtid
s, но если я сравню распечатанный Queryset из gtid
s, где он работал, с теми, где не работал, я не увижу никакой разницы.
Каковы случаи, когда regroup возвращает пустой список?
[...]
Вернуться на верх
{% regroup zeichen|dictsort:'values_id' by values_de as zeichen_by_val %}