rabbitmq Django安装了app,但配置不正确错误:django.core.exceptions.ImproperlyConfigured

rmbxnbpk  于 2022-11-08  发布在  RabbitMQ
关注(0)|答案(2)|浏览(152)
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.

实际上,我在Dango项目中与manage.py文件在同一目录中创建一个RabbitMQ消费者,我面临着上述错误。
我还补充说

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

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

我得到的这些行来自堆栈溢出相关的问题。

uqjltbpv

uqjltbpv1#

所以,你犯了两个错误。
首先:在代码中,您必须将上面的 os.enoviron 行写入要导入views.pyfunctionGenerateOutput的代码行
第二:你必须在代码中导入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

这应该可以。

nbysray5

nbysray52#

os.environ.setdefault()仅在环境变量尚未设置时才执行操作。也就是说,如果DJANGO_SETTINGS_MODULE已在您的环境中设置,并且其值与您需要的值不同,则这可以解释您的问题。请尝试使用

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

相关问题