【发布时间】:2015-08-25 18:13:10
【问题描述】:
我想要一个包含 10 个主要标签的标签列表,但以随机顺序显示,因为字体粗细将决定它们的粗细。
首先我订购对象并获得 10 个标签,然后我使用 shuffle 来随机化顺序。到目前为止它有效。我现在的问题是在模板中使用 {{forloop.counter0}} 以随机顺序输出以下代码:
<tr>
<td class="tag-0">Tag3</td>
</tr>
<tr>
<td class="tag-1">Tag1</td>
</tr>
<tr>
<td class="tag-2">Tag2</td>
</tr>
相反,我希望它是这样的:
<tr>
<td class="tag-2">Tag3</td>
</tr>
<tr>
<td class="tag-0">Tag1</td>
</tr>
<tr>
<td class="tag-1">Tag2</td>
</tr>
模板:
{% for t in tags %}
<tr>
<td class="tag-{{forloop.counter0}}">{{t.title}}</td>
</tr>
{% endfor %}
在视图中:
tags = list(Model.objects.order_by('title')[:10])
random.shuffle(tags)
【问题讨论】:
标签: python django for-loop random