ImproperlyConfigured: запрошен параметр INSTALLED_APPS, но параметры не настроены

Я пытаюсь заставить MongoDB и Django ладить друг с другом так, как я хочу. Это ошибка, которую я получаю при попытке импортировать наборы представлений из rest_framework_mongoengine.

Вся ошибка выглядит так:

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.

Не находит settings.py что ли? Если так, я не могу понять, почему! А именно, скажем, почему тогда не возникла эта проблема с другими модулями?

Вот мои INSTALLED APPS

INSTALLED_APPS = [
    'rest_framework',
    'rest_framework_mongoengine',
    'mongoengine.django.mongo_auth',
    'rest_framework.authtoken',
    'corsheaders',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django_extensions',
    'core',
    'core.essences.user',
    'core.essences.user.authentication',
    'core.essences.test_result',
]

person Albert    schedule 28.04.2018    source источник
comment
Вы не показали нам код, в котором вы на самом деле пытаетесь выполнить этот импорт.   -  person solarissmoke    schedule 28.04.2018
comment
о, беда, я забыл упомянуть, что делаю это в интерактивном режиме Python.   -  person Albert    schedule 28.04.2018


Ответы (5)


Наиболее частая причина этого заключается в том, что вы просто запускаете python вместо использования python manage.py shell, что означает, что вам нужно вручную установить переменную среды DJANGO_SETTINGS_MODULE, чтобы Django знал, где найти ваши настройки (manage.py shell сделает это за вас автоматически).

Также возможно (но реже), что у вас есть что-то, что пытается импортировать настройки в процессе настройки ваших настроек. Чтобы определить, так ли это, просмотрите свой файл настроек на предмет любых операций импорта или вызовов функций, которые могут потребоваться для доступа к настройкам (включая код в вещах, импортируемых вашим файлом настроек).

person James Bennett    schedule 28.04.2018
comment
Боже мой, ты прав ... Я, должно быть, сошел с ума ... Спасибо! - person Albert; 28.04.2018

Если вы используете Windows, запустите

set DJANGO_SETTINGS_MODULE= <yourProjectName>.settings

(или) перейдите в папку, содержащую файл настроек, в терминале и запустите

set  DJANGO_SETTINGS_MODULE=settings
person Chaitanya Sunny    schedule 02.08.2020

попробуйте это в своем xx.py

from youprojectName.wsgi import *

person jiangcong5055126com    schedule 25.04.2019
comment
Я получил эту ошибку при запуске django-каналов с daphne. Я импортировал все детали wsgi в свой файл asgi с вашей помощью, теперь он работает отлично благодаря вам! - person Kushan Gunasekera; 30.05.2019

Запустите python manage.py shell вместо запуска python, чтобы получить доступ к оболочке среды в вашем проекте. Python по умолчанию не просто распознает django установленные приложения.

person a_m_dev    schedule 24.11.2019

попробуйте python manage.py shell вместо python в терминале для интерактивной среды.

person shiva    schedule 13.01.2021