2017-08-01 57 views
2

我正在芹菜拍打任务和任务工作正常(在预定时间正常运行)但我无法看到任务在我的管理页面和所有芹菜相关的表是空的在我的PostgreSQL数据库(前django_celery_beat_periodictask)芹菜任务没有在Django数据库注册

我在这里失踪?

要求

Django==1.9.7 
python==3.5 
celery==4.1.0 
django-celery-beat==1.0.1 

项目树

advocate 
     | 
     drive 
      | 
      -- celery.py 
      -- tasks.py 

celery.py

from __future__ import absolute_import, unicode_literals 
from celery import Celery 
from celery.schedules import crontab 
import os 


os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'advocate.settings') 
# app = Celery('drive', broker='redis://localhost:6379/0') 
app = Celery('drive', broker='redis://localhost:6379/0', include=['drive.tasks']) 
app.control.purge() 
app.config_from_object('django.conf:settings', namespace='CELERY') 
# crontab for test 
app.conf.beat_schedule = { 
    'Emails-Every-Mon_Wed_Fri': { 
     'task': 'drive.tasks.weekly_task', 
     'schedule': crontab(minute='*/5'), 
    }, 
} 

app.conf.timezone = 'UTC' 

# Optional configuration, see the application user guide. 
app.conf.update(
    result_expires=3600, 
) 
app.autodiscover_tasks() 

if __name__ == '__main__': 
    app.start() 

运行命令使用

芹菜-A驱动工人-B --loglevel =调试-S Django的

回答

0

您需要在凸出/凸出/ __ init__.py模块导入应用程序。这可以确保在Django启动时加载应用程序。

__init__.py

from __future__ import absolute_import, unicode_literals 
from .celery import app as celery_app 

__all__ = ['celery_app'] 

docs

相关问题