Django Installed app and ImproperlyConfigured Ошибка: django.core.exceptions.ImproperlyConfigured

django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

На самом деле, я создаю потребителя RabbitMQ в проекте Dango в том же каталоге, что и файл manage.py, и сталкиваюсь с вышеуказанной ошибкой.

Я также добавил

import os
import pika, sys, os, json
from matcher.views import GenerateOutput

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings")

Эти строки я получил из вопросов, связанных с stackoverflow

os.environ.setdefault() действует только в том случае, если переменная окружения еще не установлена. То есть, если DJANGO_SETTINGS_MODULE уже установлена в вашем окружении и имеет значение, отличное от того, которое вам нужно, это объясняет вашу проблему. Попробуйте использовать

os.environ["DJANGO_SETTINGS_MODULE"] = "project.settings"

Итак, вы делаете две ошибки.

Первое: В коде, вы должны написать эти os.enoviron строку выше к строке кода, где вы импортируете views.py функцию GenerateOuput

Второе: Вы должны импортировать django в коде и написать строку кода ниже django.setup()

Таким образом, полный код будет :

import os
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings")
django.setup()
import pika, sys, os, json
from matcher.views import GenerateOuput

Это должно работать.

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