前几天参考网上的帖子将网站的总访问数,每日访问数和ip访问数进行了获取和显示,通过线程的方式在后台统计,不占用打开文章的时间,效果图如下,点击按钮可以进行折叠。
几天下来发现有很多的ip都只是一次性的并且查看博客访问量阅读量很少,难以判断i这么多的ip来源以及有没有阅读文章以及阅读了哪篇。前天想起之前在杨仕航的博客里有讲解统计用户以及用户ip在什么时间阅读了那篇文章的博客,于是前去参考。
由于网站结构有些不同,因此需要将示例代码进行修改来是陪自己的网站来完成阅读信息的统计,在之前有单独设置一个函数来进行数据统计,在新增了统计方法之后需要将原来的方法删除,否则会冲突报错。
在原来的model里添加ip,user以及view_time字段,并在admin里添对应的字段以便在后台显示。修改完model使用makemigrations和migrate进行数据库更新,其中,ordering = ['-view_time']表示按阅读时间倒序排列显示,将最新的阅读信息显示在最前面
之后创建urls,添加路径,将urls添加到mysite的urls里,在编写view.py,在view里将数据返回给前端页面
在app根目录下创建templates文件夹,再在temlates文件夹下创建app同名的文件夹,在该文件夹下创建html文件read_info.html。前端页面直接通过for循环将context的数据遍历出来显示到模板页面里
显示效果图如下:可以清晰的看到哪个ip在什么时间访问了那篇文章以及是否登录
源码已上传到github上,项目地址:https://github.com/lukaiqi/mysite/tree/master/read_statistics
参考文章地址:http://yshblog.com/blog/62
领取专属 10元无门槛券
私享最新 技术干货