簡體   English   中英

django-celery-beat 和 DatabaseScheduler 設置了第一次運行時間

[英]django-celery-beat and DatabaseScheduler with a set first run time

我想使用 django-celery-beat 和 DatabaseScheduler 為用戶創建“電子郵件警報”功能。 他們應該能夠說,他們希望何時收到這些警報(例如,每天 - 早上 7 點或每周星期一下午 1 點)。

我幾乎想出了如何創建周期性任務,即

>>> PeriodicTask.objects.create(
...     interval=schedule,                  # we created this above.
...     name='Importing contacts',          # simply describes this periodic task.
...     task='proj.tasks.import_contacts',  # name of task.
...     expires=datetime.utcnow() + timedelta(seconds=30)
... )

來自https://github.com/celery/django-celery-beat ,但我如何告訴它第一次發送的時間?

PeriodicTask模型中有一個字段start_time 您可以為其設置日期時間值。 任務將在那個時間之后首先發送。

>>> PeriodicTask.objects.create(
        # skipped
        start_time=datetime.utcnow() + timedelta(seconds=300)
        # task will be first sent after 5 minutes
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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