配置不正确:请求设置INSTALLED_APPS,但未配置设置

时间:2018-04-28 08:53:23

标签: django restframeworkmongoengine

我正在尝试让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',
]

5 个答案:

答案 0 :(得分:7)

最常见的原因是您只是运行python而不是使用python manage.py shell,这意味着您需要手动设置DJANGO_SETTINGS_MODULE环境变量,以便Django知道在哪里找到你的设置(manage.py shell自动为你做这件事。)

在设置设置的过程中,您还可以尝试导入设置,但也可能(但不太常见)。要确定是否属于这种情况,请查看您的设置文件,查看可能需要访问设置的任何导入或函数调用(包括设置文件导入的内容中的代码)。

答案 1 :(得分:1)

在您的xx.py中尝试 “从youprojectName.wsgi导入*”

答案 2 :(得分:1)

只需运行python manage.py shell而不是运行python即可到达项目中的环境外壳。 python默认情况下不会简单地识别django个已安装的应用程序。

答案 3 :(得分:0)

如果您使用的是Windows,请运行

set DJANGO_SETTINGS_MODULE= <yourProjectName>.settings

(或)导航到终端中包含设置文件的文件夹并运行

set  DJANGO_SETTINGS_MODULE=settings

答案 4 :(得分:0)

在终端中尝试使用 python manage.py shell 而不是 python 来实现交互式环境。