【发布时间】:2014-01-12 04:36:53
【问题描述】:
我试图弄清楚如何从我的模型中获取具有外键关系的数据。我有以下models.py:
class wine(models.Model):
name = models.CharField(max_length=256)
year = models.CharField(max_length=4)
description = models.TextField()
class collection(models.Model):
name = models.CharField(max_length=50)
description = models.TextField(null=True)
class collection_detail(models.Model):
collection = models.ForeignKey(collection)
wine = models.ForeignKey(wine)
quantity = models.IntegerField()
price_paid = models.DecimalField(max_digits=5, decimal_places=2)
value = models.DecimalField(max_digits=5, decimal_places=2)
bottle_size = models.ForeignKey(bottle_size)
Wine 是一个基本表格,Collection Detail 是一个引用葡萄酒并向其添加用户特定数据(如支付的价格)的表格。 Collection 是一组 collection_detail 对象。
我正在努力研究如何访问这些模型中的数据。我可以轻松地显示来自特定模型的数据,但是在查看特定集合时,我无法访问 collection_detail.wine.name 数据。我需要编写特定的查询来执行此操作吗?我可以从模板语言访问这些数据吗?通过管理员查看时,我的数据模型显示正确,我可以添加我需要的数据和关系。
感谢您的帮助!
【问题讨论】:
-
一个集合包含许多collection_detail。所以没有一个细节可以访问,而是一个列表。要获取此列表的查询集,请使用 collection.collection_detail_set
标签: python django django-models django-templates django-views