당신은 멋쟁이, 우리는 장고쟁이~

0%

Django Models 22편 - 패키지안 모델 정리하기

Models - Organising models in a package

Organising models in a package


manage.py startapp 커맨드는 models.py 를 포함한 어플리케이션 구조를 생성합니다. 많은 모델들을 가지고 있다면, 별도의 파일에 정리를 해두는것도 유용한 방법입니다.


그렇게 하기 위해서는, models 패키지를 생성해야 합니다.


  1. models.py 를 없애고
  2. app이름/models/디렉토리 를 생성합니다
  3. app이름/models/디렉토리 안에, __init__.py 파일을 생성하고, 당신의 모델을 저장할 파일들을 생성합니다
  4. __init__.py 파일에 import 해주어야 합니다

예를들어, organic.py , synthetic.py 가 모델 디렉토리 안에 있었다면,


__init__.py 파일에 import 해주는것을 잊지 않아야 합니다.

myapp/models/__init__.py



1
2
from .organic import Person 
from .synthetic import Robot

명시적으로 각 모델을 가져오는것은, from .models import * 을 사용하는것보다 이점이 있습니다.


이름 공간을 어수선하게 하지 않게되고, 코드를 좀더 읽기 좋게 하고, 코드 분석 툴들을 더 유용하게 해줍니다.