Django之定时任务--apscheduler
Django--定时任务apscheduler的使用
- apscheduler定时任务的使用
- 1、安装包
- 2、配置settings.py
- 3、在manage.py的文件同级目录下创建文件scheduler.py
- 4、在项目的urls.py中调用这个定时计划
- 5、然后启动项目 python manage.py runserver,在admin中查看就能看到你的定时任务及执行的时间了,下面以我的定时任务为例看一下图片
apscheduler定时任务的使用
在写一个兴趣班教务管理的小程序时,使用了Django后台来管理数据库,由于每天要根据现有设定的班级进行课表的更新,所以需要一个定时器,但是开发环境是在windows上,后台部署在linux上,问了chatGPT,说是apscheduer支持跨平台使用,然后就选了这个,以下是使用过程,按chatGPT给的代码,一次成功,比百度出来的效果好多了。
1、安装包
pip install apscheduler
2、配置settings.py
# settings.pyINSTALLED_APPS = [# other apps'django_apscheduler',
]# Configure the Django APScheduler
SCHEDULER_API_ENABLED = True
3、在manage.py的文件同级目录下创建文件scheduler.py
# scheduler.pyfrom apscheduler.schedulers.background import BackgroundScheduler
from django_apscheduler.jobstores import DjangoJobStore, register_events, register_job
from datetime import datetime, timedelta
from django.contrib.auth.models import User# Create a scheduler
scheduler = BackgroundScheduler()
scheduler.add_jobstore(DjangoJobStore(), "default")
register_events(scheduler)# Define the task functions
def count_users():user_count = User.objects.count()print(f"Total number of users: {user_count}")def update_database():# Update database logic herepass# 在7天后这个时间,执行一下任务,run_date只是一次,所以只会执行一次
# Register the task functions with the scheduler
@register_job(scheduler, "date", run_date=datetime.now() + timedelta(days=7), id="count_users_job", replace_existing=True)
def count_users_job():count_users()
# 这个没有指定哪天,只是指定小时,所以会在每天的12点,执行这个任务
@register_job(scheduler, "cron", hour=12, id="update_database_job", replace_existing=True)
def update_database_job():update_database()
4、在项目的urls.py中调用这个定时计划
# urls.pyfrom django.urls import path
from .scheduler import schedulerurlpatterns = [# other URL patterns
]# Start the scheduler
scheduler.start()
5、然后启动项目 python manage.py runserver,在admin中查看就能看到你的定时任务及执行的时间了,下面以我的定时任务为例看一下图片

相关文章:
Django之定时任务--apscheduler
Django--定时任务apscheduler的使用 apscheduler定时任务的使用1、安装包2、配置settings.py3、在manage.py的文件同级目录下创建文件scheduler.py4、在项目的urls.py中调用这个定时计划5、然后启动项目 python manage.py runserver,在admin中查看就能看到你的定时任务及执行的…...
Spring Boot 项目应用消息服务器RabbitMQ(简单介绍)
一、背景 本章讲述的是在用户下单环节,消息服务器RabbitMQ 的应用 1.1 消息服务器的应用 在写一个电商项目的小demo,在电商项目中,消息服务器的应用: 1、订单状态通知:当用户下单、支付成功、订单发货、订单完成等…...
HBuilderX
HX 简介下载安装 简介 HBuilderX 是一款由 DCloud 开发的集成开发环境 (IDE),主要用于前端开发和移动应用开发。它基于 Visual Studio Code 平台,针对 Web 开发、小程序开发、移动端开发等提供了丰富的功能和插件。 DCloud官网: https://www.dcloud.io …...
C数据结构与算法——常见排序算法时间复杂度比较 应用
实验任务 (1) 掌握常见比较排序算法的实现; (2) 掌握常用比较排序算法的性能及其适用场合。 实验内容 (1) 平均时间复杂度O(n2)和O(nlog2n)的算法至少各选两种实现; (2) 待排序的无重复关键字存放在一维整型数组中,数量为60000个ÿ…...
C++并发多线程--死锁问题及解决方法
1--死锁问题 死锁问题:两个线程访问资源时加锁,但都需要对方的资源才能执行释放锁; 代码实例:下面的代码中,当线程 1 使用 my_mutex1 上锁后,会继续使用 my_mutex2 进行上锁,若此时线程 2 已经使…...
【Spring】纯注解开发
1、简介 在Spring3.0升级了纯注解开发模式,使用Java类来代替配置文件,开启了Spring快速开发赛道。 2、定义bean Component Service Controller Repository 3、纯注解开发 使用Configuration声明一个配置类,使用ComponentScan来扫描作为bea…...
【算法心得】正确估计dfs时间复杂度;剪枝优化不怕重构
https://leetcode.cn/problems/verbal-arithmetic-puzzle/ 这题看到题,“表达式中使用的不同字符数最大为 10”,就觉得dfs就完事了,最多不过10!,10!才1e6,1e7这样。如果字符再少点,6! 7! 8!的,…...
通过网关访问微服务,一次正常,一次不正常 (nacos配置的永久实例却未启动导致)
微服务直接访问没问题,通过网关访问,就一次正常访问,一次401错误,交替正常和出错 负载均衡试了 路由配置检查了 最后发现nacos下竟然有2个order服务实例,我明明只开启了一个呀 原来之前的8080端口微服务还残留&…...
div输入框的文字超过指定行数用省略号表示css
实现效果:超过四行用省略号表示 实现方法: .text{overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 4; // 自定义行数-webkit-box-orient: vertical; }...
STM32 F103C8T6学习笔记5:定时器输出不同占空比PWM驱动舵机旋转角度
现在学习使用STM32 F103C8T6的定时器PWM模式,使用PWM驱动舵机转动不同角度,文章提供源码,测试工程,测试动态效果图。 目录 基础原理: 实验目标: 测试视频结果: 测试工程下载: 基…...
液体神经网络:LNN是个啥概念?
一、说明 在在人工智能领域,神经网络已被证明是解决复杂问题的非常强大的工具。多年来,研究人员不断寻求创新方法来提高其性能并扩展其能力。其中一种方法是液体神经网络(LNN)的概念,这是一个利用动态计算功能的迷人框…...
开源数据库Mysql_DBA运维实战 (DCL/日志)
SQL(Structured Query Language 即结构化查询语言) a.DDL语句 数据库定义语言: 数据库,表,视图,索引,存储过程,函数,创建删除ALTER(CREATE DROP ALTER) b.DML语句 数…...
神经网络基础-神经网络补充概念-03-逻辑回归损失函数
概念 逻辑回归使用的损失函数通常是"对数损失"(也称为"交叉熵损失")或"逻辑损失"。这些损失函数在训练过程中用于衡量模型预测与实际标签之间的差异,从而帮助模型逐步调整权重参数,以更好地拟合数…...
基于深度信念神经网络的矿石产量预测,基于DBN的矿石产量预测,DBN的详细原理
目录 背影 DBN神经网络的原理 DBN神经网络的定义 受限玻尔兹曼机(RBM) DBN的矿石产量预测 基本结构 主要参数 数据 MATALB代码 结果图 展望 背影 DBN是一种深度学习神经网络,拥有提取特征,非监督学习的能力,是一种非常好的分类算法,本文将DBN算法进行矿石产量预测 DB…...
JavaWeb-Filter过滤器
目录 Filter过滤器 1. Filter的生命周期 2.Filter的配置 3.拦截路径 4.拦截具体的使用 5.拦截方式配置(资源被访问方式) 6.FilterChain拦截链 Filter过滤器 filter是过滤器,相比于Servlet的发送请求,filter是用于拦截请求。…...
python如何实现1ms内触发两个接口请求
在Python中,可以通过多线程或者协程来实现1ms内触发两个接口请求。以下是两种方法的示例代码: 1.多线程实现: import threading import requestsdef send_request(url):response requests.get(url)print(response.text)# 创建两个线程&…...
深入解析路由与网络:网络的脉络
目录 路由 广域网 公网 外网 局域网 内网 以太网 Wi-Fi CDN IPv4和IPv6 IP地址分类 无类别域间路由(CIDR) 路由 路由是指在计算机网络中,将数据包从源地址传递到目标地址的过程。在一个复杂的网络中,数据包需要经过多…...
spring.HttpMessageNotReadableException: JSON parse error
实体类如下: Value public class Search{//搜索内容String value;//是否模糊搜索boolean fuzzy true; //其实这样写并不是“默认”模糊搜索,而是“一定是”模糊搜索 }spring.HttpMessageNotReadableException: JSON parse error: Cannot construct ins…...
安全中间件的设计思路和简单实践
rasp 的侵入式特性和拦截特性导致开发和运维普通不太愿意配合,当生产环境出现问题时往往第一时间先把责任推给 rasp,逐渐的安全部门普遍只能把 rasp 设置为告警模式,而且越是大的集群拦截开的就越少,所以字节的 elkeid 和某外卖大…...
试卷扫描成电子版方法分享,这个方法不要错过
很多时候,为了方便传输我们需要将试卷扫描成电子版进行存档,以备不时之需。很多小伙伴如果遇到试卷需要扫描转成电子版可能就不知道该如何操作了,其实试卷扫描是一项非常重要的工作,因此需要注意一些方法和细节。以下是试卷扫描成…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...
libfmt: 现代C++的格式化工具库介绍与酷炫功能
libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全:…...
论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...
Win系统权限提升篇UAC绕过DLL劫持未引号路径可控服务全检项目
应用场景: 1、常规某个机器被钓鱼后门攻击后,我们需要做更高权限操作或权限维持等。 2、内网域中某个机器被钓鱼后门攻击后,我们需要对后续内网域做安全测试。 #Win10&11-BypassUAC自动提权-MSF&UACME 为了远程执行目标的exe或者b…...
鸿蒙Navigation路由导航-基本使用介绍
1. Navigation介绍 Navigation组件是路由导航的根视图容器,一般作为Page页面的根容器使用,其内部默认包含了标题栏、内容区和工具栏,其中内容区默认首页显示导航内容(Navigation的子组件)或非首页显示(Nav…...
