【发布时间】:2019-01-28 17:10:09
【问题描述】:
我已经阅读了其他几个问题,但我要找的内容并不存在。
我想计算用户浏览了 ToPost/to_post.html 部分的次数。
延迟重定向有效,但增加访问次数无效:post.visit_num += 1
我有一个 视图,其模板在一秒钟后重定向:
def ToPost(request, pk):
post = Post.objects.get(pk=pk)
post.visit_num += 1
args = {'post': post}
return render(request, 'posts/to_post.html', args)
pk 在 URL 中:
url(r'^(?P<pk>\d+)/to-post/$', views.ToPost, name='to_post'),
模板to_post.html:
{% extends 'base.html' %}
{% block head %}
<meta http-equiv="refresh" content="1;url={% url 'home_space:view_post' pk=post.pk %}">
{% endblock %}
{% block body %}
<div class="container">
<h2>
To post {{ post.pk }}...
</h2>
</div>
{% endblock %}
Post的模型:
class Post(models.Model):
title = models.CharField(max_length=128, verbose_name='Title')
body = models.CharField(max_length=500, verbose_name='Description')
user = models.ForeignKey(User, on_delete=models.CASCADE)
visit_num = models.PositiveIntegerField(default=0)
def __str__(self):
return self.title
【问题讨论】:
-
您在增加访问次数后没有保存帖子。
标签: python django redirect view count