【发布时间】:2014-07-13 06:46:40
【问题描述】:
我正在尝试使用 django 的 extra() 方法将外键字段添加到查询集中,但我得到了数据库错误。我想知道我做错了什么。这是我的设置:
class ModelA(models.Model):
created = models.DateTimeField(auto_now_add=True)
name = models.CharField(max_length=100)
class ModelB(models.Model):
name = models.CharField(max_length=100)
rel = models.ForeignKey(ModelA)
我正在尝试使用 extra() 从相关模型中添加一个字段,以便我可以使用它进行 annotate()。 这是我想要做的:
ModelB.objects.all().extra(select={'date' : 'date(rel.created)'}).values('date').annotate(...)
这给了我一个数据库错误,说“rel”列不存在。
我正在使用 PostgreSQL。 谁能帮我弄清楚我做错了什么?
【问题讨论】:
标签: sql database django django-models