Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Django上列出具有多个关系的对象?示例:用户和跟踪_Python_Django_Django Models_Django Orm - Fatal编程技术网

Python 如何在Django上列出具有多个关系的对象?示例:用户和跟踪

Python 如何在Django上列出具有多个关系的对象?示例:用户和跟踪,python,django,django-models,django-orm,Python,Django,Django Models,Django Orm,我制作了一个类似twitter的微博,我想列出认证用户关注的用户帖子 型号: class Post(models.Model): post = models.TextField(max_length=300) created = models.DateTimeField(auto_now=True) user = models.ForeignKey(User) def __unicode__(self): return self.post cl

我制作了一个类似twitter的微博,我想列出认证用户关注的用户帖子

型号:

class Post(models.Model):
    post = models.TextField(max_length=300)
    created = models.DateTimeField(auto_now=True)
    user = models.ForeignKey(User)

    def __unicode__(self):
        return self.post

class UserProfile(models.Model):
    USER_SEX = (
        ('M', 'Masculino'),
        ('F', 'Femenino'),
    )
    birthday = models.DateField(null=False)
    sex = models.CharField(max_length=1, choices=USER_SEX)
    description = models.TextField(max_length=100, null=True)
    location = models.CharField(blank=True, max_length=100, null=True)
    user = models.OneToOneField(User)
    follows = models.ManyToManyField('UserProfile', related_name='followed_by', blank=True, symmetrical=False)

    def __unicode__(self):
            return self.user.get_username()
观点:

def show_posts(request):
    user = request.user
    following = user.userprofile.follows.all()
    posts = Post.objects.filter(user__in=following).order_by('-created')
    return render_to_response("posts.html", context_instance = RequestContext(request, {'posts':posts}))
此函数返回除已验证用户之外的所有用户的所有帖子。我不要这个。 我想显示所有用户的帖子,只有经过身份验证的用户在后面,还有经过身份验证的用户的帖子


有人能帮我吗?

我不确定我的答案,但没有人回答,所以我试试看

下面是一个QuerySet,它将成为UserProfile的列表,但您会在user_uuin上进行筛选,这是一个user的列表。你能不能试着把下面的内容改成多个字段给用户,然后告诉我们结果?即使你仍然有同样的问题,过滤器将更有意义