這部分會使用到session,Django已經自動幫我們安裝session的app,分別是INSTALLED_APPS的'django.contrib.sessions'以及MIDDLEWARE的 'django.contrib.sessions.middleware.SessionMiddleware'。
新增Visit資料工作表,用於儲存網站瀏覽次數。
class Visit(models.Model):
times = models.IntegerField()
以字典的方式設定session,比如'request.session["名稱"]=值'。
def visitor_count(request):
if "quiz" not in request.session: #如果session沒有紀錄
request.session["quiz"]=True #session儲存name:quiz value:True
visit_model = Visit.objects.get(pk=1) #拜訪人數
visit_model.times += 1 #拜訪人數加一
visit_model.save()
else:
visit_model = Visit.objects.get(pk=1)
visit_model.times += 0
visit_model.save()
context = {'visit_template': visit_model.times}
return render(request, 'visitor_count.html', context)
最後記得加上urlpattern:
urlpatterns = [
...
path('visitorcount', views.visitor_count),
]