在Django中安排自动化作业



有人知道如何安排Django脚本在特定日期和时间运行吗?

示例:

用户在前端输入某人的联系信息,Django后端接收表单数据,但直到48小时后才向联系人发送电子邮件。

有人有主意吗?我看到了Cron,但看起来Cron需要执行,而不是自动执行它自己?只需要帮助学习日程安排功能。

使用以下命令安装django-crontab

pip install django-crontab

在django项目的settings.py文件中,

INSTALLED_APPS = [
'django_crontab',
...
] 

在django的项目中的任何位置创建一个文件,例如myapp/cron.py,并定义要通过cron自动执行的函数

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

您需要使用一些后台任务管理器和调度程序。

Celery用于管理和执行任务,Celery Beat将帮助安排定期任务或cron,并将在给定时间执行。

相关内容

  • 没有找到相关文章

最新更新