Djangoを使用してブログを作成していますが、各投稿の閲覧回数をカウントしたいと思います。ユーザーは、ブログの記事を読むとき、私はこの関数を呼び出す:djangoビューカウンタを修正しました
def post_detail(request, post_id):
if 'viewed_post_%s' % post_id in request.session:
pass
else:
print "adding"
add_view = Post.objects.get(id=post_id)
add_view.views += 1
add_view.save()
request.session['viewed_post_%s' % post_id] = True
return render(request, 'blog/detail.html', {'Post': Post.objects.get(id=post_id)})
問題がログアウトして再度ログインする際に、ポストビューが再び増加していることです。では、なぜユーザーがログアウトしたときにdjangoがセッションを削除するのですか?これをどのように修正できますか?
何ユーザーが以前のポストを見ていてもカウントしないです:( –
私は管理パネルでUserSeenPostsを登録し、ユーザがUserSeenPostsオブジェクトを作成していない投稿を表示すると、なぜ –
@ mohammedqudahが更新された回答 –