Django-가져 오기 django.conf.settings와 가져 오기 설정의 차이점


99

Django 앱에서 다음 import 문의 기본적인 차이점은 무엇입니까?

import settings

from django.conf import settings

1
+1 누가 Django 개발을 처음 접했는지에 대한 매우 흥미로운 질문이기 때문입니다.

답변:


134
import settings

Django 프로젝트의 설정 (.py) 모듈을 가져옵니다 (물론 애플리케이션의 "루트"패키지에서이 코드를 작성하는 경우).

from django.conf import settings

django.conf 패키지 (Django의 제공 파일)에서 설정 개체 를 가져옵니다 . 이것은 중요합니다 .

[..] 코드는 global_settings 또는 자체 설정 파일에서 가져 오지 않아야합니다. django.conf.settings는 기본 설정 및 사이트 별 설정의 개념을 추상화합니다. 단일 인터페이스를 제공합니다. 또한 설정 위치에서 설정을 사용하는 코드를 분리합니다.

업데이트 : 자체 설정을 정의 하려면 설명서의이 부분을 참조하십시오.


4
참고로 global_settings는 django.conf 패키지 내의 또 다른 모듈입니다. 설명서에서 알 수 있듯이 사용하지 마십시오.

3
from django.conf import settings단위 테스트 중에 설정을 덮어 쓸 수 있도록하려면 사용 이 중요합니다.
Joris

4
또한 모든 설정 이름 은 대문자 여야합니다 . 당신의 var에있는 경우 즉, my_var설정에서 다음이 실패합니다 from django.conf import settings... settings.my_var. 그러나 이름을 MY_VAR지정하면 성공할 것입니다!
nik_m
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.