想象一下,我有一个允许用户记笔记的系统。我有一个User模型和一个Note模型:
class User(models.Model):
name = models.TextField()
class Note(models.Model):
contents = models.TextField()
user = models.ForeignKey(User)
created_at = models.DateTimeField(auto_now_add=True)
我想在过去24小时内获得排名数量的笔记。目前我正在这样做:
User.objects.filter(note__created_at__gt=datetime.now()-timedelta(days=2)).annotate(note_count=Count('note')).order_by('-note_count')
无论我是timedelta(days = 2)还是timedelta(seconds = 1),这都会得到相同的结果
任何帮助将不胜感激。
答案 0 :(得分:0)
事实证明这种方法确实有效,这是其他地方的一个错误导致输出问题。