我正在使用regroup模板标记对Choices字段上的queryset输出进行分组。在模型中:
RESOURCE_TYPES = (
('tut','External tutorial'),
('read','Additional reading'),
('org','Company or organization'),
)
restype = models.CharField('Resource type',max_length=6,choices=RESOURCE_TYPES)
在视图中:
resources = Resource.objects.filter(tutorial=tutorial)
在模板中:
{% regroup resources by restype as resource_list %}
{% for type in resource_list %}
<h3>{{type.grouper}}</h3>
因此,type.grouper在页面上呈现为“tut”或“org”,而不是长形式。通常,您将使用get_foo_display语法来获取选择的值,而不是键。但经过重组之后,这个价值似乎无法获得。我无法在{{type.grouper}}上找到使用get_foo_display。
当你考虑它时,这是有道理的,但是解决方法是什么?感谢。
答案 0 :(得分:13)
如果你这样做会怎样?
{% regroup resources by get_restype_display as resource_list %}