形成一对多关系的Django查询集

时间:2016-02-27 17:57:04

标签: python django performance django-queryset django-orm

我有一个定义照片的Django模型:

class Pic(models.Model):
    image = models.ImageField(upload_to=upload_pic_to_location, storage=OverwriteStorage())
    owner = models.ForeignKey(User)
    upload_time = models.DateTimeField(db_index=True, auto_now_add=True)

另一个定义上述照片的消息可以发送为:

class PicMessage(models.Model):
    which_pic = models.ForeignKey(Pic)
    sending_time = models.DateTimeField(auto_now_add=True)

即。相同的pic可以多次作为不同的消息发送。找到给定PicMessage发送的最新 user的最有效方法是什么?

我试试这个:PicMessage.objects.filter(which_pic__in=Pic.objects.filter(owner=self.request.user)).latest('sending_time')

1 个答案:

答案 0 :(得分:0)

dynamic_cast