django使用sqlite3统计前台站点访问数量示例

 更新时间:2023年08月08日 14:01:31   作者:郝同学1208  
这篇文章主要为大家介绍了django使用sqlite3统计前台站点访问数量示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

后端

Django框架自带sqlite3数据库,通过models.py文件内定义数据库类用来存储访问信息

from django.db import models
import time

# 网站总访问次数
class VisitNumber(models.Model):
    date = models.IntegerField(verbose_name='网站访问时间', default=int(time.time()))

    class Meta:
        verbose_name = '网站访问时间'
        verbose_name_plural = verbose_name

    def __str__(self):
        return str(self.count)

新增接口

用以向数据库中新增一条数据,前台页面渲染过程中调用一次该接口

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})

用以从数据库获取访问信息

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

因为models.py文件发生改变,所以需要在环境上重新生成数据库表,执行以下两行命令,之后启动python服务

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文件中增加一个请求

const setVisitCount = (params) => {
  return request.get("/setVisitCount/", params) as Promise<{
    status: boolean;
    data: Array<any>;
  }>;
}

在总入口文件app.tsx中增加调用请求

import { setVisitCount } from "./api/index.ts";
//并不需要对返回值做处理,因此可以不必使用await同步
const visitCount = setVisitCount(null);

在需要显示数据的页面调用获取请求并渲染即可

const { data, count } = await getUseData({ type: this.state.type });
this.setState({
    visitCount: count,
});

以上就是django使用sqlite3统计前台站点访问数量示例的详细内容,更多关于django sqlite3统计站点访问量的资料请关注脚本之家其它相关文章!

相关文章

  • Python使用Scrapy保存控制台信息到文本解析

    Python使用Scrapy保存控制台信息到文本解析

    这篇文章主要介绍了Python使用Scrapy保存控制台信息到文本解析,具有一定借鉴价值,需要的朋友可以参考下
    2017-12-12
  • 解决echarts中饼图标签重叠的问题

    解决echarts中饼图标签重叠的问题

    这篇文章主要介绍了解决echarts中饼图标签重叠的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • Python实现优先级队列结构的方法详解

    Python实现优先级队列结构的方法详解

    优先级队列(priority queue)是0个或多个元素的集合,每个元素都有一个优先权,接下来就来看一下简洁的Python实现优先级队列结构的方法详解:
    2016-06-06
  • python实现年会抽奖程序

    python实现年会抽奖程序

    这篇文章主要为大家详细介绍了python实现年会抽奖程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • Python命名空间的本质和加载顺序

    Python命名空间的本质和加载顺序

    这篇文章主要介绍了Python命名空间的本质和加载顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • 关于Python 的简单栅格图像边界提取方法

    关于Python 的简单栅格图像边界提取方法

    今天小编就为大家分享一篇关于Python 的简单栅格图像边界提取方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • python聚类算法选择方法实例

    python聚类算法选择方法实例

    在本篇文章里小编给大家整理的是一篇关于python聚类算法选择方法实例,有需要的朋友们可以学习参考下。
    2021-07-07
  • Python使用Pillow进行图像处理

    Python使用Pillow进行图像处理

    这篇文章介绍了Python使用Pillow进行图像处理的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • 在Django的View中使用asyncio的方法

    在Django的View中使用asyncio的方法

    这篇文章主要介绍了在Django的View中使用asyncio的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • PyTorch中torch.matmul()函数常见用法总结

    PyTorch中torch.matmul()函数常见用法总结

    torch.matmul()也是一种类似于矩阵相乘操作的tensor连乘操作。但是它可以利用python中的广播机制,处理一些维度不同的tensor结构进行相乘操作,这篇文章主要介绍了PyTorch中torch.matmul()函数用法总结,需要的朋友可以参考下
    2023-04-04

最新评论