成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Django搭建個人博客:統(tǒng)計文章瀏覽量

n7then / 2357人閱讀

摘要:文章瀏覽量是所有社交類網(wǎng)站所必備的數(shù)據(jù),足以顯示其重要性了。總結(jié)本章完成了簡單的統(tǒng)計瀏覽量的功能,并且在前后端中對用戶的身份進行了驗證。下一章學習與瀏覽量緊密相關(guān)的功能查詢最熱文章。

文章瀏覽量是所有社交類網(wǎng)站所必備的數(shù)據(jù),足以顯示其重要性了。

博主可以通過瀏覽量來評估某篇文章的受歡迎程度,讀者也能夠通過瀏覽量來篩選質(zhì)量更高的文章。

然而,準確統(tǒng)計瀏覽量并不簡單:

某些類型的請求不應(yīng)該統(tǒng)計為瀏覽量,比如作者自己的瀏覽或編輯文章之后的重定向請求;

由于用戶眾多,瀏覽量的數(shù)據(jù)時刻都在快速更新,會給數(shù)據(jù)庫帶來很大的壓力。因此很多大型網(wǎng)站都會使用如Redis這樣的讀寫速度非??斓膬?nèi)存數(shù)據(jù)庫輔助存儲。

因為我們的項目是博客網(wǎng)站,粗略統(tǒng)計就可以了,也沒有那么大的用戶壓力,所以設(shè)計就簡單得多了。

模型

瀏覽量作為每篇博文都有的數(shù)據(jù),需要一個字段來存儲。

因此修改文章的模型:

article/models.py

...
class ArticlePost(models.Model):
    ...
    
    total_views = models.PositiveIntegerField(default=0)
    
    ...

PositiveIntegerField是用于存儲正整數(shù)的字段

default=0設(shè)定初始值從0開始

修改完數(shù)據(jù)庫別忘了要數(shù)據(jù)遷移,否則更改不會生效。

由于新字段設(shè)置了初始值,遷移會很順暢:

(env) E:django_projectmy_blog>python manage.py makemigrations
Migrations for "article":
  articlemigrations