我想發送一個對象的一部分到模板。如何只發送一個對象的一部分到django中的模板
我有一個像下面2種型號:
class Person(models.Model):
name = models.CharField(max_legth=50)
sure_name = models.CharFiled(max_length=50)
class Office(models.Model):
location = models.CharField(max_legth=50)
,我也創建了類似下面的模型:
class PersonOffice(models.Model):
person = models.ForeignKey(Person)
office = models.ForeignKey(Office)
現在,當我從數據庫中的數據,通過PersonOffice.objects.all()
,該數據是像如下:
{
{
"pk": 0,
"person": {
"pk":0,
"name":"Harry",
"sure_name":"Potter"
},
"office":{
"pk":5,
"location":"Toronto"
}
},
{
"pk": 1,
"person": {
"pk":6,
"name":"John",
"sure_name":"Kelly"
},
"office":{
"pk":6,
"location":"NewYork"
}
}
}
我想render
functi只是辦公室發送到模板上。我該怎麼做? 感謝
更新 我想在模板與{% for %}
循環使用。例如:
{% for office in Offices %}
<p>Office location: {{ office.location }}</p>
{% endfor %}
我用下面的代碼:
offices = PersonOffice.objects.all().values('office')
print(offices)
和下面是結果在終端:
<QuerySet [{'office': 1}, {'office': 2}, {'office': 11}]>
您可以發佈您views.py文件,以顯示在您目前正在渲染? – csling
您似乎在發送到模板之前將您的對象序列化,不知道爲什麼 –
沒有。我不會序列化它們。只是爲了在這裏顯示一個好的方式,我將它們顯示爲json格式。 – msln