2013-04-21 3 views
3

재사용 가능한 장고 앱을 쓰고 있습니다. settings.py에 자신의 설정을 추가하는 가장 좋은 방법은 무엇입니까? 모든 설정에 내 app_name을 접두어로 사용해야 하나, 아니면 한 가지 설정 만 사용해야합니다. 내 앱을 위해서?장고의 네임 스페이스 설정

답변

3

특히 재사용 할 수있는 패키지를 고려하는 경우 관련된 패키지에서만 앱 설정을 정의해야합니다. 고유 한 전역 이름 (해당 설정이있는 고유 한 글로벌 이름)은 항상 좋은 아이디어입니다. PEP-8 globals을보십시오.

재사용 가능한 패키지를 만드는 경우 먼저 설정 모듈에서 속성을 가져 와서 사용자가 자신의 상수로 재정의하는지 확인하는 것이 좋습니다.

예.

from django.conf import settings 

MY_CONSTANT = getattr(settings, 'MY_CONSTANT', True) 

def foo(*args, **kwargs): 
    if MY_CONSTANT: 
     return 'hello' 
    else: 
     return 'goodbye' 

응용 프로그램 대신 'hello'

대부분의 패키지는 당신이 제안 접두어로 패키지 이름을 사용 할 기본의 'goodbye'를 반환하도록 사용자가 자신의 설정 모듈 MY_CONSTANT = False을 설정할 수있는이 방법은, 여기에 약간의 예 :

FEINCMStastypie