Celery AppRegistryNotReady: Приложения еще не загружены при использовании Django с Celery

Я столкнулся с проблемой при работе Celery и Django, когда получаю исключение "AppRegistryNotReady", говорящее, что "Apps are not loaded yet." Это происходит при попытке запустить Celery с помощью планировщика тактов.

Вот основные детали:

- Я использую Django с Celery для фоновой обработки задач.

- При попытке запустить планировщик Celery beat с помощью команды:

celery -A myproject beat -l info

Я столкнулся со следующим трассировочным отказом:

Отслеживание (последний последний вызов): ... raise AppRegistryNotReady("Apps are not loaded yet.") django.core.exceptions.AppRegistryNotReady: Приложения еще не загружены.

- Похоже, что проблема связана с настройками Django или загрузкой приложения во время инициализации Celery.

Это мой код
celery.py

from __future__ import absolute_import, unicode_literals
import os
from celery import Celery
from django.conf import settings

os.environ.setdefault('DJANGO_SETTINGS_MODULE','myproject.settings')

app = Celery('myproject')
app.conf.enable_utc = False

app.conf.update(timezone = 'Asia/Kolkata')
app.config_from_object(settings, namespace = 'CELERY')

# celery beat settings  
app.conf.beat_schedule ={

}

app.autodiscover_tasks()

@app.task(bind=True)
def debug_task(self):
    print(f'Request: {self.request!r}')

settings.py

CELERY_BROKER_URL = 'redis://127.0.0.1:6379/0'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TASK_SERIALIZER = 'json'
CELERY_TIMEZONE ='Asia/Kolkata'
CELERY_BEAT_SCHEDULER = 'django_celery_beat.schedulers:DatabaseScheduler'
CELERY_RESULT_BACKEND = 'django-db'
from myapp.models import Client,ImportSettings
task_intervals = ImportSettings.objects.all()

CELERY_BEAT_SCHEDULE = {}
for task_interval in task_intervals:
    interval_seconds = task_interval.check_frequency_minutes
    client_id = task_interval.client

    CELERY_BEAT_SCHEDULE[f'import-{client_id}'] = {
        'task': 'myapp.tasks.process_csv_files',
        'schedule': interval_seconds,
        'args': (
            'directory_path',
            'table1',
            'table2'
        )
    }

__init__.py

from .celery import app as celery_app
__all__ = ('celery_app',)

Любые соображения или предложения о том, как решить эту проблему, будут очень признательны. Спасибо!

Попробовал указать полный путь к приложению Celery:

celery -A myproject.celery beat -l info

Попробовал запустить Celery beat с опцией --detach:

celery -A myproject.celery beat --detach -l info

Проверили настройки Django и загрузку приложения:

Убедились, что настройки Django и загрузка приложений верны в myproject/settings.py и myproject/__init__.py

Убедитесь, что Celery правильно настроен в myproject/celery.py файле

Проверили наличие проблем в файле myapp/models.py, особенно вокруг модели Import settings.

Убедитесь, что виртуальная среда активирована перед запуском команд Celery.

создал совершенно новый проект, и все равно ошибка сохраняется

Вернуться на верх