如何计算对象的调用次数。例如:我有一个图像应用程序,我想向用户显示图片被调用的频率。像YouTube上的videosviewsDjango计数对象调用
0
A
回答
2
您需要在表格中存储计数并在每次使用图像时增加计数。
首先,一个字段添加到您的模型,如果你没有一个已经存储计数:
class MyImageClass(models.Model):
...
views = models.PositiveIntegerField(default=0)
然后您就需要创建一个视图,将返回图像数据,并增加查看次数。
def my_image_view(request, id):
instance = get_object_or_404(MyImageClass, id=id)
filename, ext = os.path.splitext(instance.image_field.name)
ext = ext[1:].lower() # remove period and normalize to lowercase
instance.views += 1
instance.save()
response = HttpResponse(instance.image_field.read(), mimetype='image/%s' % ext)
response['Content-Disposition'] = 'inline;filename=%s.%s' % (filename, ext)
return response
胡克认为成URLPATTERN,然后在你的模板调用与图像:
<img src="{% url my_image_view_name id=my_image.id %}">
你肯定会需要做一些优化了,并且有线程安全问题考虑一下,但这足以让你的球滚动起来。
1
有没有任何内置的方法来允许这一点。您必须将信息存储到数据库中
相关问题
- 1. Django的ORM对象计数
- 2. Django的计数相关的对象
- 3. 在Django模板中计数对象
- 4. django模板过滤器:计数对象
- 5. 用Django逼近对象统计信息
- 6. Django TypeError'QueryDict'对象无法调用
- 7. 'NoneType'对象不可调用django cms
- 8. Django OneToOneField post_save无法调用int对象
- 9. 差异在Django对象创建调用
- 10. Django的WSGIRequest'对象不是可调用
- 11. django-selenium TypeError:'str'对象不可调用
- 12. django错误:'unicode'对象不可调用
- 13. Django 1.4 RegexUrlResolver对象无法调用
- 14. Django注册'str'对象不可调用
- 15. 计数对象
- 16. 计数对象
- 17. 对象的引用计数
- 18. 使用django-haystack计算模板中的总搜索对象数
- 19. 使用Django计算和过滤数据库中的对象
- 20. 使用Django Celery将视图计数器添加到对象
- 21. 调用对象和被调用对象
- 22. 的Magento:调用一个成员函数计数()非对象上
- 23. 计数子对象
- 24. JGit:计数对象
- 25. 计数GROUPBY对象
- 26. PowerShell对象计数
- 27. Django:从数据库调用对象返回<Queryset [0123]>
- 28. 调用对象的对象
- 29. Django对象数组解析Django
- 30. 从哪里对象计数对象