Models - Organising models in a package
Organising models in a package
manage.py startapp
커맨드는 models.py 를 포함한 어플리케이션 구조를 생성합니다. 많은 모델들을 가지고 있다면, 별도의 파일에 정리를 해두는것도 유용한 방법입니다.
그렇게 하기 위해서는, models 패키지를 생성해야 합니다.
- models.py 를 없애고
- app이름/models/디렉토리 를 생성합니다
- app이름/models/디렉토리 안에,
__init__.py
파일을 생성하고, 당신의 모델을 저장할 파일들을 생성합니다 __init__.py
파일에 import 해주어야 합니다
예를들어, organic.py , synthetic.py 가 모델 디렉토리 안에 있었다면,
__init__.py
파일에 import 해주는것을 잊지 않아야 합니다.
myapp/models/__init__.py
1 | from .organic import Person |
명시적으로 각 모델을 가져오는것은, from .models import *
을 사용하는것보다 이점이 있습니다.
이름 공간을 어수선하게 하지 않게되고, 코드를 좀더 읽기 좋게 하고, 코드 분석 툴들을 더 유용하게 해줍니다.