Django.core.exceptions.ImproperlyConfigured: Запрашиваемые настройки | os.environ.setdefault('DJANGO_SETTING_MODULE', 'online_shop.settings') не работают [duplicate]

Я пытался использовать celery и celery beat с моим проектом django, но всегда получал одну и ту же ошибку: django.core.exceptions.ImproperlyConfigured: Requested settings, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. и вот моя конфигурация celery:

from celery import Celery
from datetime import timedelta
import os
from django.conf import settings


os.environ.setdefault('DJANGO_SETTING_MODULE', 'online_shop.settings')

celery_app = Celery('online_shop')

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

celery_app.conf.broker_url = 'amqp://guest:guest@localhost'
celery_app.conf.result_backend = 'rpc'
celery_app.conf.task_serializer = 'json'
celery_app.conf.result_serializer = 'pickle'
celery_app.conf.accept_content = ['json', 'pickle']
celery_app.conf.result_expires = timedelta(days=1)
celery_app.conf.task_always_eager = False
celery_app.conf.worker_prefetch_multiplier = 2

но каждый раз, когда я пытаюсь запустить celery следующим образом: celery -A online_shop worker -l info я получаю эту ошибку...

Я попробовал эту строку: export export DJANGO_SETTINGS_MODULE=online_shop.settings но это не работает при демонизации процесса!!! Я попробовал записать ее в .bashrc: та же ошибка. Я попробовал записать ее в файл activate в виртуальном окружении, тоже ничего не вышло! Я также пытался экспортировать переменную перед запуском celery в supervisor conf:

[program:exporting_to_os]
user=ali
command=export DJANGO_SETTING_MODULE=online_shop.settings
autostart=true
autorestart=true
stderr_logfile=/var/log/online_shop/exporting.err.log
stdout_logfile=/var/log/online_shop/exporting.out.log

[program:online_shop_celery]
user=ali
directory=/home/.../OnlineShop/online_shop/
command=/home/.../OnlineShop/env/bin/celery -A online_shop worker -l info
numprocs=1
autostart=true
autorestart=true
stdout_logfile=/var/log/online_shop/celery.log
stderr_logfile=/var/log/online_shop/celery.err.log

и все та же ошибка... Пожалуйста, подскажите, как решить эту проблему.

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