创建一个“现在热门的东西”,就像具有视图计数的django模型的应用程序一样

时间:2009-08-27 21:16:15

标签: django django-models

我正在尝试为视频库的功能模拟一个“现在热门的东西”(即与时间相关的最常见 - 聚类视图(及时)将导致更高的评级),但我不能非常了解如何在Django中正确使用它而不会导致大量的数据库查询。我意识到这没有一个正确的答案,但我完全失去了。该列表将根据类别而有所不同,但会在网站的所有视图中显示,因此我不能只是破解一个解决方案 - 它需要相当优化。

我对Django很新,所以如果有任何技巧我可以用来减少这个问题,我很想知道。

我应该指出,我可以随意为模型添加字段,因为我们仍在制定网站规范。

1 个答案:

答案 0 :(得分:1)

您可以将表(模型)用于群集,例如一天,一周一周,一个月等,并在那里存储viewcount而不是视频模型本身,然后您只需参考它。像:

Months.objects().filter(month=this_month).order_by(viewcount)[0].video