[英]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.