gpt4 book ai didi

python - Django 复杂查询

转载 作者:行者123 更新时间:2023-11-30 23:52:01 35 4
gpt4 key购买 nike

我有一个 UserLink 模型,它基本上描述了用户之间关系的强度。 UserLink 的权重会随着用户参与某些事件的交互而增加。

class UserLink(models.Model):

from_user = models.ForeignKey(User, related_name='following_set')
to_user = models.ForeignKey(User, related_name='follower_set')
date_added = models.DateTimeField(auto_now=True)
weight = models.FloatField(default=1.0, blank=True, null=True)
active = models.BooleanField(default=True)

有一个函数可以计算每对用户的权重。问题是我不知道如何创建一个查询,它会返回选定用户具有最强用户链接权重的用户的查询集,即对于用户“Paul”,根据权重获取他的“顶级 friend ” Paul 和所有其他人之间的用户链接,按降序排列。

最佳答案

UserLink.objects.filter(from_user=paul).order_by('-weight')

并从查询集中获取to_user属性。如果您想将其减少到用户数量,请使用[:5]。如果您希望将查询限制为权重超过特定值的链接,请使用 .filter(from_user=paul,weight__gte=value)

我希望这非常简单,不需要进一步解释。

关于python - Django 复杂查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6485556/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com