我不想将 celery 任务放在 tasks.py 中,而是将它们放在几个不同的文件中。
有没有办法告诉 Celery 在这些文件中查找任务?还是 tasks.py 在某处进行了硬编码?
如果有帮助,这是我的版本:
Django==1.8.7
celery==3.1.19
kombu==3.0.26
django-celery==3.1.17
请您参考如下方法:
根据celery docs ,因为 celery 3.1 版不再需要 django-celery 应用程序,因为 django 支持已经集成到 celery 本身中。
根据 tutorial ,只需要在项目的 __init__.py
app 对象(
celery.Celery 的实例)
app.autodiscover_tasks接受两个参数,
packages,可以很容易地成为lambda: settings.INSTALLED_APPSrelated_name,默认为tasks,但可以覆盖
