이 질문은 이전 요청되었습니다 What is the purpose of apps.py in Django 1.9?Django에서 apps.py의 목적은 무엇입니까?
응용 프로그램 구성은 응용 프로그램에 대한 메타 데이터를 저장하는 객체. 일부 속성은 AppConfig 하위 클래스에서 구성 할 수 있습니다. 다른 것들은 Django와 읽기 전용으로 설정됩니다.
그러나 애플리케이션의 메타 데이터는 무엇을 의미합니까? 그것은 AppConfig
metadata:name
, verbose_name
, path
, label
, module
, models_module
에만 국한되어 있습니까? 다음과 같이
아니면가이 확장 의미가 않습니다 우리가 날짜 형식 구성이 blog
응용 예를 들면, 특히 응용 프로그램 특정 메타 데이터, 미리 정의 된 메타 데이터를 beyonds, 일반적 정의 :
# File: settings.py
BLOG = {
'DATE_FORMAT': 'ddMMYYY',
}
하는
# File: blog/<...>.py
from django.conf import settings
date_format = settings.BLOG['DATE_FORMAT']
반대로, 우리가이 설정을 이동할 수 있습니다 : 그것은 다음과 같이 사용되는 uration을 blog/apps.py
으로 BlogConfig
?
class BlogConfig(AppConfig):
name = 'blog'
verbose_name = 'Awesome Blog'
date_format = 'ddMMYYYY'
그래서 응용 프로그램의 코드 전역을
이date_format
에 의해 사용되는 :
# File: blog/<...>.py
from django.apps import apps
date_format = apps.get_app_config('blog').date_format
는 settings.py
가 프로젝트 설정 것을 나에게 소리가 아닌 응용 프로그램 설정. 따라서 모든 응용 프로그램 설정을 apps.py
, 그 다음은 settings.py
으로 설정하는 것이 좋습니다. 그렇다면 settings.py
대신 내부에 응용 프로그램 구성을 넣을 수있는 유효한 가정/인수/규칙이 있습니까?