获取Django ManyToManyField关系定义的所有对象

mit*_*chf 5 django django-models manytomanyfield

我正在建立的网站允许用户创建"帖子",并具有类似Twitter的跟随用户的概念.对于给定的用户,我想显示他们关注的用户的所有帖子.

这是我的简化模型:

class User
    # a standard django.contrib.auth user model

class UserProfile(models.Model):
    # my AUTH_PROFILE_MODULE for django-profiles
    user = models.ForeignKey(User, unique=True)
    following = models.ManyToManyField('self', symmetrical=False, related_name="followed_by")

class Posts(models.Model):
    user = models.ForeignKey(User)
    post = models.TextField()
Run Code Online (Sandbox Code Playgroud)

问题:如何从给定用户关注的用户创建所有Post对象的查询集?

我认为我通过在UserProfile上创建"跟随"关系使其变得更加复杂,UserProfile不是与Posts的ForeignKey关系的模型.

UPDATE!这是答案:

Posts.objects.filter(user__userprofile__in=UserProfile.objects.get(user=your_user_object).following.all())
Run Code Online (Sandbox Code Playgroud)

Vla*_*nov 7

Posts.objects.filter(user__in=UserProfile.objects.get(user=your_user_object).following)
Run Code Online (Sandbox Code Playgroud)