개발로 자기계발
728x90

에러문

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.

 

에러문 이유


Django는 기본적으로 DJANGO_SETTINGS_MODULE 환경 변수를 통해 설정을 로드한다. 이 환경 변수가 설정되지 않으면 Django는 프로젝트 설정을 찾을 수 없으므로 위와 같은 ImproperlyConfigured 예외가 발생한다.

startapp 명령어를 사용하지 않고 Django 프로젝트 외부에서 Django에 등록된 모델이나 기능을 사용하려면, DJANGO_SETTINGS_MODULE 환경 변수를 적절히 설정하거나 django.conf.settings.configure() 함수를 호출하여 Django 설정을 초기화해야 한다.

이 글에서는 DJANGO_SETTINGS_MODULE를 설정해서 다음과 같은 코드를 실행하여 Django 설정을 초기화할 수 있다:

 

에러 해결

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")

import django
django.setup()

myproject에는 본인이 만든 장고 프로젝트의 이름을 넣으면 된다.


다만 여기서 주의할 점은 모델이나 기능을 사용할 때 위의 코드가 제일 상단에 위치하여 먼저 초기화한 후 사용 해야 한다.
728x90
SMALL
profile

개발로 자기계발

@김잠봉

틀린부분이나 조언이 있다면 언제든 환영입니다:-)