[英]Schedule automated jobs in Django
任何人都知道如何安排 Django 脚本在某个日期和时间运行?
例子:
用户在前端输入某人的联系信息,Django 后端接收表单数据,但直到 48 小时后才向联系人发送 email。
有人有想法吗? 我看到了 Cron,但看起来 Cron 需要执行并且不会自行自动执行? 只需要帮助学习调度功能。
您需要使用一些后台任务管理器和调度程序。
Celery用于管理和执行任务, Celery Beat将有助于安排周期性任务或 cron 并将在给定时间执行。
使用以下命令安装 django-crontab
pip install django-crontab
在您的 django 项目的 settings.py 文件中,
INSTALLED_APPS = [
'django_crontab',
...
]
在您的 django 项目中的任何位置创建一个文件,例如 myapp/cron.py 并定义您希望通过 cron 自动执行的 function
def my_cron_job():
# your functionality goes here
将以下行添加到您的 django 项目的 settings.py 文件[这是每两分钟的 cron 作业]
CRONJOBS = [
('*/2 * * * *', 'myapp.cron.my_cron_job')
]
添加所有定义的 CRONJOBS
python manage.py crontab add
获取所有活跃的 CRONJOBS
python manage.py crontab show
删除所有定义的 CRONJOBS
python manage.py crontab remove
列出所有活动的 cron
crontab -l
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.