템플릿의 한 부분 만 보내고 싶습니다.장고의 템플릿에 객체의 일부만 보내는 방법
내가 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)
와 나는 또한 다음과 같은 모델을 만들어 : 나는 PersonOffice.objects.all()
로, 데이터베이스에서 데이터를 찍을 때, 지금
class PersonOffice(models.Model):
person = models.ForeignKey(Person)
office = models.ForeignKey(Office)
를, 데이터는 같다 아래 :
{
{
"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