Python Django每月更新每个用户的_分数,以及他们所有帖子的总喜欢度
我想为每个用户的个人资料更新每月_分数字段 我有一个Post模型,它有一个方法返回Post的like,名为like\u count 如何使用:Python Django每月更新每个用户的_分数,以及他们所有帖子的总喜欢度,python,sql,django,database,Python,Sql,Django,Database,我想为每个用户的个人资料更新每月_分数字段 我有一个Post模型,它有一个方法返回Post的like,名为like\u count 如何使用: Profile.objects.update(monthly_score=Subquery()) 要在这个月获得用户的帖子并返回他们所有喜欢的帖子吗 我试过了,但没用: Profile.objects.update( monthly_score = Subquery( Post.objects.filter(
Profile.objects.update(monthly_score=Subquery())
要在这个月获得用户的帖子并返回他们所有喜欢的帖子吗
我试过了,但没用:
Profile.objects.update(
monthly_score = Subquery(
Post.objects.filter(
user = Profile.user,
date_posted__month = today.month
).aggregate(Sum(like_count))
)
)
那怎么办?
大概是这样的:
[Profile.objects.filter(pk = profile_item.pk).update(
monthly_score = sum(
[post_item.like_count() for post_item in Post.objects.filter(
user = profile_item.user,
date_posted__month = today.month
)]
)
) for profile_item in Profile.objects.all()]
附言:修复了@AlphaDjango在评论中写的错误。为什么不起作用?你有错误吗?如果是,错误/回溯是什么?现在的错误在部分user=Profile中。在/leadboard/字段'id'返回TypeError的用户需要一个数字,但得到了。谢谢,这就是我要找的。然而,当我运行代码时,我得到一个错误“Profile”对象没有属性“update”。我是否需要向概要文件添加更新方法,或者是否有其他方法解决此问题?ThanksI对QuerySet上的作品进行了一些搜索和更新,我相信profile_项只是一个对象,所以我不能对其使用更新。还有别的办法吗?