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 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)

    Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)

    本文主要简单的介绍使用Python处理txt汉字文字、二维列表排序和获取list下标的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-03-03
  • Django使用Channels实现WebSocket的方法

    Django使用Channels实现WebSocket的方法

    WebSocket是一种在单个TCP连接上进行全双工通讯的协议。WebSocket允许服务端主动向客户端推送数据。这篇文章主要介绍了Django使用Channels实现WebSocket,需要的朋友可以参考下
    2019-07-07
  • 在Python中通过threading模块定义和调用线程的方法

    在Python中通过threading模块定义和调用线程的方法

    由于著名的GIL的存在,Python中虽然能创建多条线程,但却不能同时执行...anyway,这里我们还是来学习一下在Python中通过threading模块定义和调用线程的方法
    2016-07-07
  • 利用Python进行数据可视化的实例代码

    利用Python进行数据可视化的实例代码

    数据可视化和数据挖掘都是探索数据和分析数据的一种手段,下面这篇文章主要给大家介绍了关于如何利用Python进行数据可视化的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-09-09
  • Python爬虫之解析HTML页面详解

    Python爬虫之解析HTML页面详解

    本文介绍了Python中用于解析HTML页面的重要工具之一——BeautifulSoup库,详细讲解了BeautifulSoup库的基本使用方法、标签选择器、CSS选择器、正则表达式、遍历文档树等内容,并结合实例代码展示了BeautifulSoup库的应用场景
    2023-04-04
  • Python机器学习logistic回归代码解析

    Python机器学习logistic回归代码解析

    这篇文章主要介绍了Python机器学习logistic回归代码解析,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • python根据url地址下载小文件的实例

    python根据url地址下载小文件的实例

    今天小编就为大家分享一篇python根据url地址下载小文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python 中的int()函数怎么用

    python 中的int()函数怎么用

    int() 函数用于将一个字符串会数字转换为整型。接下来通过本文给大家介绍python 中的int()函数的相关知识,感兴趣的朋友一起看看吧
    2017-10-10
  • Django使用Celery异步任务队列的使用

    Django使用Celery异步任务队列的使用

    这篇文章主要介绍了Django使用Celery异步任务队列的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • python 实现创建文件夹和创建日志文件的方法

    python 实现创建文件夹和创建日志文件的方法

    这篇文章主要介绍了python 实现创建文件夹和创建日志文件的方法,文中给大家介绍了python 读写创建文件文件夹的方法 ,需要的朋友可以参考下
    2019-07-07

最新评论