除了视图外,是否有与django hitcount模板标记等效的标记?

除了视图外,是否有与django hitcount模板标记等效的标记?,django,django-templates,django-views,Django,Django Templates,Django Views,我正在使用我的应用程序的views.py中的点击数,我对此感到困惑。文档建议使用此选项 from hitcount.models import HitCount from hitcount.views import HitCountMixin # first get the related HitCount object for your model object hit_count = HitCount.objects.get_for_object(your_model_object) #

我正在使用我的应用程序的
views.py
中的点击数,我对此感到困惑。文档建议使用此选项

from hitcount.models import HitCount
from hitcount.views import HitCountMixin

# first get the related HitCount object for your model object
hit_count = HitCount.objects.get_for_object(your_model_object)

# next, you can attempt to count a hit and get the response
# you need to pass it the request object as well
hit_count_response = HitCountMixin.hit_count(request, hit_count)

# your response could look like this:
# UpdateHitCountResponse(hit_counted=True, hit_message='Hit counted: session key')
# UpdateHitCountResponse(hit_counted=False, hit_message='Not counted: session key has active hit')
但是,我并不是在寻找对命中计数对象的响应。我只想以与模板标记提供的方式类似的方式计算点击数,如下所示

{% get_hit_count for [object] within ["days=1,minutes=30"] %}

views.py
中,如何准确地获取给定时间段内对象的命中计数?

我也遇到了同样的困境。因此,我研究了他们的观点,并在基于函数的视图中实现了您所要求的内容。让我们假设我们要计算用户配置文件上的所有视图。观点:

import hitcount#导入整个包
从hitcount.models导入hitcount
def配置文件(请求):
my_profile=profile.objects.get(user=request.user)
#标记它
hit\u count=HitCount.objects.get\u for\u对象(我的\u配置文件)
点击次数\响应=hitcount.views.HitCountMixin.hitcount(请求,点击次数)
#数一数看
profile\u views=my\u profile.hit\u count.hits
返回呈现(请求'profile.html',locals())
我发现我必须导入整个hitcount包才能使用
hitcount.views.HitCountMixin
。我猜我的应用程序把
hitcount.views.HitCountMixin
hitcount.models.HitCountMixin
搞混了,可能是因为我从
models.py
导入了所有内容。因此,如果在您的views.py中有
from.models import*
像我一样,那么导入整个包以指定您所指的HitCountMixin是明智的。。。就像上面的代码一样

无论如何,请确保要计算命中率的模型继承自
hitcount.models.HitCountMixin
,并且您与
hitcount.models.hitcount)具有通用关系

从hitcount.models导入HitCountMixin,hitcount
类配置文件(models.Model、HitCountMixin):
user=models.ForeignKey(CustomUser,on_delete=models.CASCADE)
点击次数\u generic=generic关联(点击次数,对象id\u字段='object\u pk',
相关\u查询\u名称='hit\u计数\u通用\u关系')
就这样。注销并再次登录到你的应用程序-我想是为了刷新Django会话框架(我不得不这么做)。然后,在模板处,调用配置文件视图,就像一个普通的本地

<p> Profile Views: {{profile_views}} </p>
纵断面图:{{纵断面图}


我也有同样的困境。因此,我研究了他们的观点,并在基于函数的视图中实现了您所要求的内容。让我们假设我们要计算用户配置文件上的所有视图。观点:

import hitcount#导入整个包
从hitcount.models导入hitcount
def配置文件(请求):
my_profile=profile.objects.get(user=request.user)
#标记它
hit\u count=HitCount.objects.get\u for\u对象(我的\u配置文件)
点击次数\响应=hitcount.views.HitCountMixin.hitcount(请求,点击次数)
#数一数看
profile\u views=my\u profile.hit\u count.hits
返回呈现(请求'profile.html',locals())
我发现我必须导入整个hitcount包才能使用
hitcount.views.HitCountMixin
。我猜我的应用程序把
hitcount.views.HitCountMixin
hitcount.models.HitCountMixin
搞混了,可能是因为我从
models.py
导入了所有内容。因此,如果在您的views.py中有
from.models import*
像我一样,那么导入整个包以指定您所指的HitCountMixin是明智的。。。就像上面的代码一样

无论如何,请确保要计算命中率的模型继承自
hitcount.models.HitCountMixin
,并且您与
hitcount.models.hitcount)具有通用关系

从hitcount.models导入HitCountMixin,hitcount
类配置文件(models.Model、HitCountMixin):
user=models.ForeignKey(CustomUser,on_delete=models.CASCADE)
点击次数\u generic=generic关联(点击次数,对象id\u字段='object\u pk',
相关\u查询\u名称='hit\u计数\u通用\u关系')
就这样。注销并再次登录到你的应用程序-我想是为了刷新Django会话框架(我不得不这么做)。然后,在模板处,调用配置文件视图,就像一个普通的本地

<p> Profile Views: {{profile_views}} </p>
纵断面图:{{纵断面图}


您解决了这个问题吗?我也在试着这么做!不,很遗憾。我也没有找到可靠的替代方案,所以我暂时把这个功能搁置在我的项目中。你解决了这个问题吗?我也在试着这么做!不,很遗憾。我也没有找到可靠的替代方案,所以我暂时把这个特性搁置在我的项目中。