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

0%

Django Models 2편 - using models

Using models (모델 사용하기)


앱 등록하기


모델을 정의 한 후에 우리는, Django 에게 이 모델을 사용할것이라고 얘기해주어야 합니다.


Django 에게 이 모델을 사용할것이라고 알려주기 위해서는,


settings.py 에 있는 INSTALLED_APPS 에 해당 모듈명을 추가해 주어야 합니다


예를들어, python manage.py startapp usemodel 명령어를 통해, usemodel 이라는 앱을 생성하였다고 가정하면, settings.py 파일에 INSTALLED_APPS 안에, 생성된 모델이 아래와 같이 등록 되어 있어야 합니다.


1
2
3
4
INSTALLED_APPS = [
#...
'usemodel'
]



makemigrations


INSTALLED_APPS 에 새로운 앱을 추가해 주고, 해당 앱에 대한 모델을 작성해 주었으면,

데이터베이스에 적용을 해주어야 합니다. 하지만, 적용전에 python manage.py makemigrations 명령어를 통해서, 데이터베이스 적용 전에 migrations 파일을 만들어 줍니다.


1
python manage.py makemigrations

해당 앱의 모델을 아직 작성하지 않아도, 위의 makemigrations 명령어는 정상으로 실행됩니다.

왜냐하면, 새로운 모델이 생성되었기 때문입니다.

이렇게 앱과 모델을 등록한다음에는, 앱의 모델을 변경할때마다,

makemigrations 와 migrate 명령어를 실행하여, 데이터베이스에 변경사항을 적용 해주어야 합니다.


migrate


makemigrations 명령어를 실행 시켜 주었으면, migrate 명령어를 통해서, 데이터 베이스에 실제 적용을 합니다.


1
python manage.py migrate


모델을 사용하는 순서


  1. 앱생성
  2. 앱을 settings.py 에 등록
  3. python manage.py makemigrations
  4. python manage.py migrate