我正在使用django 1.6与Mysql
我有这个型号
class Student(models.Model):
username = models.CharField(max_length=200, unique = True)
class Score(models.Model)
student = models.ForeignKey(Student)
date = models.DateTimeField()
score = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)
现在我想获得每个学生的最新成绩记录.
我试过了
Score.objects.values('student').annotate(latest_date=Max('date'))
Run Code Online (Sandbox Code Playgroud)
我也试过了
Score.objects.values('student__username').annotate(latest_date=Max('date'))
Run Code Online (Sandbox Code Playgroud)
如描述Django ORM - 获取组的最新记录, 但它没有帮助.
基本上,我想做这个,但在Django 2.0。
如果我尝试:
Purchases.objects.filter(.....).annotate(my_max=Window(
expression=Max('field_of_interest'),
partition_by=F('customer')
)
)
我取回所有行,但将my_max属性添加到每条记录。