我做了这张桌子,但我不知道如何进行编号。我想要一个前十名的列表,然后从数据库中获取所有数据。我本质上是想让它显示“ 1”,下一个“ 2”和下一个“ 3”,依此类推。我该怎么做?
def home(请求): straatData = data.objects.all()[:10]
count = data.objects.count()
numbers = []
for dataCount in range(1, count + 1):
numbers.append(dataCount)
context = {
'data': straatData,
'count': numbers,
}
return render(request, 'home.html', context)
我需要得到最高的数字以显示1,2,3,4 ...与结果一样多。但是我不知道怎么做
答案 0 :(得分:1)
您不需要为此设置上下文变量。您可以在模板代码中使用forloop.counter
。
{% for item in data %}
<tr>
<td> {{ foorlop.counter }} </td>
<td> {{ item }} </td>
</tr>
{% endfor %}
如果要从0开始计数,请使用forloop.counter0
答案 1 :(得分:0)
也许您应该使用jinja来循环渲染表格?
在您的html中:
{% for num in count %}
<tr>
<td> {{ num }} </td>
<td> {{ data[num][0] }} </td>
<td> {{ data[num][1] }} </td>
<!-- Im not sure how your data is formatted! -->
</tr>
{% endfor %}
没有看到您的html,很难知道您当前如何渲染表格。