我试图收集与每个页面视图细节相关的每个访问者计数的数据
我已经实现了统计页面访问者的功能,但每次刷新页面时,都会添加一个不准确的视图。我的问题是如何添加到函数IP address中,以显示它是否存在,从计数中忽略它,并且访客计数仅与新访客相关
这是模型
class Post(models.Model):
user= models.ForeignKey(User, on_delete=models.CASCADE)
--------------------------------------------------
title = models.CharField(max_length=100, unique=True)
viewCount=models.IntegerField(default=0)
def __str__(self):
return self.title
def incrementViewCount(self):
self.viewCount += 1
self.save()
这是views.py
def get(self, request, *args, **kwargs):
res = super().get(request, *args, **kwargs)
self.object.incrementViewCount()
return res
您可以获取用户IP,并检查该IP是否已在当天计算
正在Django中获取用户IP地址:
然后,您必须添加一个日期字段并以IP为基础保存访问, i、 e.您将有包含列IP、日期->;然后,只需计算当天(天数)或整个时间内有多少不同的IP
例如
伪查询->
Select count(IP) where Date = "2020-07-27"
->;二,或者您可以查看django-tracking2或https://github.com/thornomad/django-hitcount->;这些库可以完成您需要的所有事情,而且实现起来非常简单
相关问题 更多 >
编程相关推荐