【发布时间】:2021-08-01 08:23:42
【问题描述】:
我正在尝试在 Django 模板中显示我的模型对象的属性,但数据不会出现在页面源中。
在 views.py
def view_func(request):
...
data = ModelObj.objects.all()
print(data) #prints <QuerySet [ <ModelObj: ModelObj object (primary_key)>, ... ]>
return render(request, "templates/app/page.html", {'data': data})
在page.html
... formatted html ...
<thead> ... </thead>
<tbody>
{ % for i in data % }
<tr>
<td> {{ i.name }} </td>
<td> {{ i.time }} </td>
<td> {{ i.value }} </td>
</tr>
{ % endfor % }
</tbody>
当我在运行 Django 站点后查看页面源代码时:
... html ...
<tbody>
{ % for i in data % }
<tr>
<td></td>
<td></td>
<td></td>
</tr>
{ % endfor % }
</tbody>
如果我将<td> {{data}} </td>添加到html页面,我可以看到页面上显示<QuerySet [ <ModelObj: ModelObj object (primary_key)>, ... ]>,但是Django不会在页面上显示模型对象属性。感谢您对此错误的任何帮助,谢谢。
编辑:这是在 Python 3.9 和 Django 版本 3.1.2
【问题讨论】:
标签: python html django django-templates