簡體   English   中英

如何通過 Django 視圖安排 celery 任務

[英]How to schedule a celery task through a django view

有沒有辦法在 Django 視圖中定義日期和時間並在定義的時間運行芹菜任務?

例如

def test(request):
    date = '2020-09-12'
    time = '11:34'
    
    # run the below task at the specified time
    test_celery_test.delay()
    
    ...

我希望任務在指定的時間只運行一次,不應該重復

你能在下面試試這個嗎

讓我們說這是你的任務

import time
from datetime import datetime, timedelta
from datetime import date
from celery import shared_task,current_task, task
from celery import Celery

app = Celery()

@app.task
def test():

    print ('1')
    todaynow = datetime.now()

    print todaynow

然后你可以在你的 views.py 中這樣調用

test.apply_async(eta=datetime.datetime(2019, 8, 30, 11, 35))

如果您只想運行一次,為什么要放入views.py,我建議您為此在自定義管理commond 或crontab 中查找相同的內容。

謝謝

暫無
暫無

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

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