如何从QuerySet聚合对象

时间:2012-12-01 19:09:47

标签: python django django-models

我有一个Django模型User,它具有单向自引用多对多关系:

following = models.ManyToManyField('self', through='Following', symmetrical=False, related_name='following_user')

我有另一个评论模型与用户有关系:

user = models.ForeignKey(User)

我想得到以下用户的所有评论。如何从用户的QuerySet中获取所有注释? 像这样的东西?:

self.following.[somehow get all comments]

2 个答案:

答案 0 :(得分:2)

对于这样的查询,你需要转过来:你想要评论,所以从评论模型开始。

Comment.objects.filter(user__following=self)

答案 1 :(得分:0)

以下是最终为我工作的代码:

Comment.objects.filter(user__in=self.get_following())