有时,我们需要统计和显示文章的浏览量,筛选最热文章,给用户作推荐
在简单的博客系统,我们可以简单的通过在模型中,增加字段,并在视图中该文章的渲染时,将该字段作自增1处理
models.py中增加如下字段:
class Article(models.Model):
# ... 其它已有字段
# 新增 total_views 字段记录阅读量
total_views = models.PositiveIntegerField(default=0, editable=False)
def post_detail(request,id):
post.total_views += 1
默认设置为0,PositiveIntegerField为正整数
views.py中,增加:
def article_detail(request, id):
article = Article.objects.get(pk=id)
# 文章浏览量 + 1
article.increase_views()
# 定义上下文
context = {
"title": "文章列表",
"article": article,
}
return render(request, "cms/article_content.html", context)
同时,在前端需要的地方,显示 {{ article.total_views }} ,可以看到浏览量了
注意:这个是一个最简单的浏览量设置,即只要打开文章,就会增加一个,不管打开的方式如何
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。