如何使用celery在Django上设置定期任务?

时间:2018-08-08 10:41:12

标签: python django python-3.x celery django-celery

我当前的代码:

from celery.task.schedules import crontab
from celery.decorators import task, periodic_task


@periodic_task(run_every=crontab(hour=15, minute=55, day_of_week="wed"))
def demo():
    print("testing------------------------")

设置文件:

CELERY_BROKER_URL = os.environ.get('CELERY_BROKER_URL', 'amqp://guest:guest@localhost//')

它不起作用,我丢失了什么吗?

预先感谢

1 个答案:

答案 0 :(得分:1)

我认为您应该使用下面的代码,它应该对您有用。

celery_app = celery("project_name")

@celery_app.on_after_finalize.connect def setup_periodic_tasks(sender, **kwargs): sender.add_periodic_task(5.0, demo.s(args))

@celery_app.task(bind=True) def demo(args): print("testing------------------------")