簡體   English   中英

在 Django 中安排自動化作業

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM