我首先只在django使用芹菜 .

这是我的配置,

from __future__ import absolute_import

import os
from celery import Celery
from celery.schedules import crontab


 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'inventory.settings')
 app = Celery('inventory')

 app.config_from_object('django.conf:settings', namespace='CELERY')
 #app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
 app.autodiscover_tasks()

 app.conf.beat_schedule = {
    'send-report-every-single-minute': {
        'task': 'db.tasks.send_daily_report',
        'schedule': crontab(minute='*/1'),
     },
 }

我跑芹菜 Worker 并打败了,任务奏效了 .

celery -A inventory worker -l info
celery -A inventory beat -l info

但现在,我正在使用该软件包, django-celery-beat .

我在django管理面板中添加了计划,并启用了相同的任务 . 但它并没有把任务交给芹菜 Worker . Worker 继续等待 . 它坚持开始,

它也没有显示我手动运行节拍时安排的任务,

$ celery -A inventory beat -l debug

[2017-12-21 16:10:48,471: INFO/MainProcess] beat: Starting...
[2017-12-21 16:10:48,527: DEBUG/MainProcess] Current schedule:

[2017-12-21 16:10:48,527: DEBUG/MainProcess] beat: Ticking with max interval->5.00 minutes
[2017-12-21 16:10:48,528: DEBUG/MainProcess] beat: Waking up in 5.00 minutes.

看,在 Current Schedule 行下面,它只显示一条空行 .

只有当我通过django管理面板添加任务计划时才会发生这种情况 .

Neither does it shows the celery cleanup task in the django admin panel.