目的:解决运行Django项目的时候一起运行自己写的py文件
一、类别
Linux:celery和django-crontab插件
Windows:apscheduler
二、准备
1.安装apscheduler、django-apscheduler
2.在settings注册app:
INSTALLED_APPS = (
.......
django_apscheduler,
)
3.注册后数据迁移
python manage.py migrate
迁移之后会生成两张表:
4.任意在一个app下的views.py文件添加以下:
import time
from apscheduler.schedulers.background import BackgroundScheduler
from django_apscheduler.jobstores import DjangoJobStore, register_events, register_jobDjangoJobStore, register_events, register_job
scheduler = BackgroundScheduler()
scheduler.add_jobstore(DjangoJobStore(), "default")
@register_job(scheduler, "interval", seconds=1)
def test_job():
time.sleep(4)
print("I'm a test job!")
# raise ValueError("Olala!")
register_events(scheduler)
scheduler.start()
print("Scheduler started!")
5.启动程序