如何使用 django & celery 在特定时间开始任务

JuC*_*nte 4 python django date celery

我正在使用 Celery,它适用于异步,但我需要将操作设置为特定的日期时间。

例如“在 2019 年 8 月 30 日的 11:35,执行此操作”。

我的 celery.py 现在非常简单,但它有效:

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
Run Code Online (Sandbox Code Playgroud)

我从视图中调用它并在兔子上运行打印

关于如何编程任务的任何想法?

编辑:

我试图调用“测试”

test.apply_async(eta=datetime(2019, 7, 31, 6, 28))

Run Code Online (Sandbox Code Playgroud)

在花中它收到任务但不执行它,为什么?

在此处输入图片说明

Iai*_*ton 5

要在特定时间运行任务,您可以将eta参数传递给apply_async

test.apply_async(eta=datetime.datetime(2019, 8, 30, 11, 35))
Run Code Online (Sandbox Code Playgroud)