Django ORM中的复杂查询

3
我有一个模型Follow:
class Follow(BaseModel):

    follower = django.db.models.ForeignKey(
        'User',
        related_name='_follows_we_are_follower'
    )
    followee = django.db.models.ForeignKey(
        'User',
        related_name='_follows_we_are_followee'
    )
    datetime_canceled = django.db.models.DateTimeField(null=True, blank=True)

当我在处理一个用户时,如何获取他关注的所有用户? 我想要的是类似于“给我所有具有datetime_canceledNonefollower为该用户的Follow对象,然后对于所有这些Follow对象,获取followee字段中的用户。” 如何用Django编写这个查询?

2个回答

1

我离django相当远了,所以语法可能有误。但我猜你想要类似这样的内容:

User.objects.filter(Follow_related_name__in = ['_follows_we_are_follower', ,'_follows_we_are_followee'], datetime_canceled__is_null =True)

0
my_user._follows_we_are_follower.filter(datetime_canceled=None)

编辑

User.objects.filter(_follows_we_are_followee__follower=my_user, _follows_we_are_followee__datetime_canceled=None)

这将返回以下内容。我们需要用户。 - Ram Rachum

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接