我正在使用 Django 的重新分组模板标签来对一系列对象进行分组。假设这些是对象:
cities = [
{"name": "Mumbai", "population": "19,000,000", "country": "India"},
{"name": "Calcutta", "population": "15,000,000", "country": "India"},
{"name": "New York", "population": "20,000,000", "country": "USA"},
{"name": "Chicago", "population": "7,000,000", "country": "USA"},
{"name": "Tokyo", "population": "33,000,000", "country": "Japan"},
]
在我的模板中,我将它们分组如下:
{% regroup cities by country as country_list %}
<ul>
{% for country in country_list %}
<li>{{ country.grouper }}
<ul>
{% for city in country.list %}
<li>{{ city.name }}: {{ city.population }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
这导致
India
Mumbai: 19,000,000
Calcutta: 15,000,000
USA
New York: 20,000,000
Chicago: 7,000,000
Japan
Tokyo: 33,000,000
我想显示每个对象的“总体”索引,使其看起来像这样:
India
1: Mumbai: 19,000,000
2: Calcutta: 15,000,000
USA
3: New York: 20,000,000
4: Chicago: 7,000,000
Japan
5: Tokyo: 33,000,000
我不是在要求一个 HTML 解决方案;我是在要求一个 HTML 解决方案。我的用例是一系列分组问题,我想添加一个问题计数器。
有没有办法在模板中执行此操作,或者我应该在我的视图中编写必要的代码?
我认为您需要在视图中添加索引,Django 有意限制其模板语言中的功能,以阻止直接在模板中包含大量逻辑。我建议按照建议的方法解决此问题:
然后在您的模板中,您可以使用索引属性: