gpt4 book ai didi

python - 创建带有链接的按字母顺序排列的列表

转载 作者:行者123 更新时间:2023-11-30 23:05:28 25 4
gpt4 key购买 nike

我有一个人员列表(类似于我的模型中的:

surname = models.CharField(max_length=255)
firstname = models.CharField(max_length=255)

我想为姓氏的每个起始字母输出一个表格。因此,例如(在模板中):

<table class='table'>
{% for author in content %}
<tr>
{% if author.surname|first == "A" %}
<td>{{ author.surname }}</td>
{% endif %}
</tr>
{% endfor %}
</table>

上面的代码有效。尽管如此,是否可以在某种程度上自动化上述代码,而不是构建与字母表中的字母一样多的“if”(和模板)?我想要类似 A B C D E 等的内容...每个字母上都有链接,当单击一个字母时,它会输出一个以 A B C D E 等开头的姓氏表...

预先感谢您的帮助。

最佳答案

您可以使用regroup

{% regroup content by surname.0 as authors %}
<ul>
{% for author in authors %}
<li>{{ author.grouper }}
<ul>
{% for item in author.list %}
<li>{{ item.get_surname}}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>

这将按姓氏的第一个字符重新组合您的内容,grouper 将成为第一个字母,而 list 是具有该字母的作者

分组将使用的顺序取决于内容的顺序,因此您可能需要先按姓氏对内容进行排序,然后再传递到模板中。

关于python - 创建带有链接的按字母顺序排列的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33121479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com