有一个包含30列的模块。 我在views.py中查询该表以获取最后一条记录(最后一行)。 要在模板(index.html)中获取数据,我必须在每一列及其前面写入其值。我必须做30次! 是否有类似{{form}}的东西来自动获取所有列及其值,或者至少通过使用{%for ...%}?
在views.py
中
def articlesindex(request):
data = Articles.objects.all().last()
return render(request, 'Articles\index.html', {'articles':data})
def articlesindex(request):
data = Articles.objects.all().last()
return render(request, 'Articles\index.html', {'articles':data})
在index.html
{{ articles }} (does not work)
{{ articles.a_table }} (does not work)
{% for k,v in articles %} (does not work)
<tr>
<td>{{ k }}</td>
<td>{{ v }}</td>
</tr>
答案 0 :(得分:0)
这是因为last()
返回查询集中的单个对象(请参见文档here)。因此,因为它是单个对象,所以您只有一行。您可以按如下所示渲染对象:
<tr>
<td>{{ articles.attr_1 }}</td>
<td>{{ articles.attr_2 }}</td>
...
<td>{{ articles.attr_n }}</td>
</tr>
属性一一