django使用sqlite3統(tǒng)計(jì)前臺(tái)站點(diǎn)訪問(wèn)數(shù)量示例
后端
Django框架自帶sqlite3數(shù)據(jù)庫(kù),通過(guò)models.py文件內(nèi)定義數(shù)據(jù)庫(kù)類(lèi)用來(lái)存儲(chǔ)訪問(wèn)信息
from django.db import models
import time
# 網(wǎng)站總訪問(wèn)次數(shù)
class VisitNumber(models.Model):
date = models.IntegerField(verbose_name='網(wǎng)站訪問(wèn)時(shí)間', default=int(time.time()))
class Meta:
verbose_name = '網(wǎng)站訪問(wèn)時(shí)間'
verbose_name_plural = verbose_name
def __str__(self):
return str(self.count)
新增接口
用以向數(shù)據(jù)庫(kù)中新增一條數(shù)據(jù),前臺(tái)頁(yè)面渲染過(guò)程中調(diào)用一次該接口
def set_visit_count(request):
cur_time = int(time.time())
count_nums = VisitNumber()
count_nums.date = cur_time
count_nums.save()
return JsonResponse({"status": True, "data": cur_time})
用以從數(shù)據(jù)庫(kù)獲取訪問(wèn)信息
conn = sqlite3.connect("/root/Django/db.sqlite3")
cursor = conn.cursor()
data = cursor.execute(f"select * from DeployProductRepair_visitnumber where date > {start_time} and date < {end_time};")
conn.commit()
cur_time_visit = len(data.fetchall())
cursor.close()
conn.close()
return cur_time_visit因?yàn)閙odels.py文件發(fā)生改變,所以需要在環(huán)境上重新生成數(shù)據(jù)庫(kù)表,執(zhí)行以下兩行命令,之后啟動(dòng)python服務(wù)
python3 /root/Django/manage.py makemigrations python3 /root/Django/manage.py migrate nohup python3 /root/Django/manage.py runserver 10.243.22.192:8080
前端
src/api/index.ts文件中增加一個(gè)請(qǐng)求
const setVisitCount = (params) => {
return request.get("/setVisitCount/", params) as Promise<{
status: boolean;
data: Array<any>;
}>;
}在總?cè)肟谖募pp.tsx中增加調(diào)用請(qǐng)求
import { setVisitCount } from "./api/index.ts";
//并不需要對(duì)返回值做處理,因此可以不必使用await同步
const visitCount = setVisitCount(null);在需要顯示數(shù)據(jù)的頁(yè)面調(diào)用獲取請(qǐng)求并渲染即可
const { data, count } = await getUseData({ type: this.state.type });
this.setState({
visitCount: count,
});以上就是django使用sqlite3統(tǒng)計(jì)前臺(tái)站點(diǎn)訪問(wèn)數(shù)量示例的詳細(xì)內(nèi)容,更多關(guān)于django sqlite3統(tǒng)計(jì)站點(diǎn)訪問(wèn)量的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Django把SQLite數(shù)據(jù)庫(kù)轉(zhuǎn)換為Mysql數(shù)據(jù)庫(kù)的過(guò)程
- Django數(shù)據(jù)庫(kù)(SQlite)基本入門(mén)使用教程
- django 將自帶的數(shù)據(jù)庫(kù)sqlite3改成mysql實(shí)例
- Django 創(chuàng)建后臺(tái),配置sqlite3教程
- Django將默認(rèn)的SQLite更換為MySQL的實(shí)現(xiàn)
- DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫(kù)sqlite3)
- django 連接數(shù)據(jù)庫(kù) sqlite的例子
相關(guān)文章
Python + opencv對(duì)拍照得到的圖片進(jìn)行背景去除的實(shí)現(xiàn)方法
這篇文章主要介紹了Python + opencv對(duì)拍照得到的圖片進(jìn)行背景去除的實(shí)現(xiàn)方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
VSCode中Python環(huán)境配置、創(chuàng)建虛擬環(huán)境及pip的一些常用命令
這篇文章主要給大家介紹了關(guān)于VSCode中Python環(huán)境配置、創(chuàng)建虛擬環(huán)境及pip的一些常用命令,Python環(huán)境的創(chuàng)建是在VSCode中很常見(jiàn)的一個(gè)需求,特別是當(dāng)我們需要開(kāi)發(fā)或者調(diào)試多個(gè)Python項(xiàng)目時(shí),使用虛擬環(huán)境是一種好的方式,需要的朋友可以參考下2023-10-10
flask庫(kù)中sessions.py的使用小結(jié)
在Flask中Session是一種用于在不同請(qǐng)求之間存儲(chǔ)用戶(hù)數(shù)據(jù)的機(jī)制,Session默認(rèn)是基于客戶(hù)端Cookie的,但數(shù)據(jù)會(huì)經(jīng)過(guò)加密簽名,防止篡改,下面就來(lái)具體介紹一下如何使用2025-07-07
Python+Socket實(shí)現(xiàn)基于TCP協(xié)議的客戶(hù)與服務(wù)端中文自動(dòng)回復(fù)聊天功能示例
這篇文章主要介紹了Python+Socket實(shí)現(xiàn)基于TCP協(xié)議的客戶(hù)與服務(wù)端中文自動(dòng)回復(fù)聊天功能,結(jié)合實(shí)例形式分析了Python+Socket實(shí)現(xiàn)帶自動(dòng)回復(fù)功能的TCP聊天程序相關(guān)操作方法與注意事項(xiàng),需要的朋友可以參考下2017-08-08
linux之文件查找指定文件中包含關(guān)鍵字的行信息方式
這篇文章主要介紹了linux之文件查找指定文件中包含關(guān)鍵字的行信息方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2023-06-06
使用Python畫(huà)了一棵圣誕樹(shù)的實(shí)例代碼
這篇文章主要介紹了使用Python畫(huà)了一棵圣誕樹(shù)的實(shí)例代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
win10+anaconda安裝yolov5的方法及問(wèn)題解決方案
這篇文章主要介紹了win10+anaconda安裝yolov5的方法及問(wèn)題解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
Python爬蟲(chóng)eval實(shí)現(xiàn)看漫畫(huà)漫畫(huà)柜mhgui實(shí)戰(zhàn)分析
這篇文章主要為大家介紹了Python爬蟲(chóng)eval實(shí)現(xiàn)看漫畫(huà)漫畫(huà)柜mhgui實(shí)戰(zhàn)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07

