从速成课程中学习并尝试将其付诸实践。问题在于Django指导书没有涵盖每个类的多个数据点。
下面是模型,视图和模板。我知道问题出在类上,但是我没有找到以视图def将其拉入的方式返回所有类数据的最佳方法。
(models.py)
class PropData(models.Model):
date_added = models.DateTimeField(auto_now_add=True)
prop = models.ForeignKey(Prop, on_delete=models.CASCADE)
date_purchased = models.DateField()
city = models.TextField(max_length=75)
state = models.TextField(max_length=25)
purchase_price = models.DecimalField(max_digits=11, decimal_places=2)
(views.py)
def prop(request, prop_id):
prop = Prop.objects.get(id=prop_id)
propdata = prop.propdata_set.all()
context = {'prop': prop, 'propdata': propdata}
return render(request, 'propSheets/property.html', context)
(property.html)
<p>Property: {{ prop }}</p>
<p>City: {{ propdata.city }}</p>
当然,propdata.city
不返回任何内容。我需要添加/更改什么才能将查询集输出到页面?
答案 0 :(得分:2)
看起来propdata
是所有PropData
对象的集合,因此您可以遍历它们以获取每个关联的城市。尝试以下
{% for pd in propdata %}
<p>City: {{ pd.city }}</p>
{% endfor %}