我有一本新的字典:
new = {'Delhi-Mumbai': [<Truckdb: Truckdb object (6)>], 'Doon-Gurgaon': [<Truckdb: Truckdb object (8)>, <Truckdb: Truckdb object (6)>]}
我无法在模板中从TruckDb渲染对象
这是我在views.py中尝试过的
return render(request, 'classroom/teachers/dispatcher_output.html',{'res':new})
这是我的模板
{% for k,v in res.items %}
<h1>v value is </h1>
{{ v.Name }}
{% endfor %}
Models.py
class Truckdb(models.Model):
Name = models.CharField(max_length=30)
Category = models.CharField(max_length=30)
Truckid = models.IntegerField(blank=True)
Length = models.FloatField(blank=True)
Breadth = models.FloatField(blank=True)
Height = models.FloatField(blank=True)
Volume = models.FloatField(blank=True)
Weight = models.FloatField(blank=True)
Price = models.FloatField(blank=True)
我无法理解我在做什么错?
这是我在模板中使用的输出:
{% for k,v in res.items %}
<h1>v value is </h1>
{{ v.Name }}
{% endfor %}
我希望能够像使用任何其他模型一样使用对象,并根据模型具有的其他属性获取值。像这样:
{%,res.items%中的k,v}
<h1>v value is </h1>
{{ v.Name }}
{{ v.Category }}
{{ v.Truckid }}
{% endfor %}
答案 0 :(得分:2)
您必须使用两个for loops
,因为字典中的每个元素都是一个查询集
{% for k,v in res.items %}
{% for element in v %}
<h1>v value is </h1>
{{ element.Name }}
{% endfor %}
{% endfor %}