我想要重构的 Django 模板之一中有以下代码:
{% ifequal sort_type "set" %}
{% regroup cards by set as grouped %}
{% endifequal %}
{% ifequal sort_type "rarity" %}
{% regroup cards by rarity as grouped %}
{% endifequal %}
它确实有效,但它真的很难看,我想让它更像这样:
{% regroup cards by sort_type as groupedcards %}
但这不起作用(它只是将它们全部放在一个名为 None 的组中。)从文档中,我认为它可能正在尝试字典查找(即,调用 card["set"] 而不是 card.set)。
有没有在模板中执行此操作的好方法,或者我应该使用 itertools 将重组移出到 Python 代码中?