Django:我该如何遍历Taggit标记并按字母顺序列出它们,同时将它们分隔在模板中?

时间:2018-06-26 04:25:59

标签: django django-templates django-views django-taggit

我实际上已经在许多站点中看到了这一点,并且我想知道如何复制功能。基本上,标签遵循这种模式

A | all tags that start with A         Y | all tags that start with Y

B | all tags that start with B         Z | all tags that start with Z

A,B,...,Y,Z可能位于<h5> tag<li> tags中的所有标记中

基本上,我希望标签列表页面按字母顺序显示整个博客中使用的所有标签。

我有一个方法,但是可能不太实用。我正在考虑遍历所有标签,抓取每个项目的第一个字母,将其放入新词典中,然后遍历该词典以显示在模板中。

这是一种实用的方法吗?

我也有第三方软件taggithttps://github.com/fizista/django-taggit-templatetags2

1 个答案:

答案 0 :(得分:0)

这听起来像视图可以更好地处理。创建一个字典,其中key是字母,值是相关标签的数组。传递给上下文。

Dict_you_want = {'A':['apple','argentina','aron'], 'B':['ball','banana'], ....,
                 . . . . . .. . . . . 
                 'Z':['zebra','zeon']}
context['dict_you_want'] = Dict_you_want

在html模板中,您可以遍历它并以所需的方式呈现它。