问题描述
|
假设我有以下Django模型:
class Info(models.Model):
instrument = models.ForeignKey(\'Instrument\')
date = models.DateTimeField()
如何提取每个乐器的最新日期的条目?
解决方法
尝试这个:
Instrument.objects.all().annotate(max_date=models.Max(\"info__date\"))
它将返回所有乐器的列表,并且每个乐器将具有附加属性“ 2”,其中包含该乐器的最新日期。
,如果要获取每种乐器的最新Info
条目,可以执行以下操作:
latest_notes = []
for instrument in Instrument.objects.all():
latest_note = instrument.info_set.order_by(\'-date\')[0]
latest_notes.append(latest_note)
根据您拥有多少个“ 5”条记录,这可能可行,也可能不可行。