Django에서 model.py을 정의하면 이 내용을 Database에 적용시키는 과정에 Migration이 쓰인다.
DB Schema를 생성하고 관리할 때, 마치 git처럼 버전을 나눠서 관리할 수 있게 해주는 시스템이다.
(Schema: DB 내에서 data가 저장되는 구조와 제약 조건을 정의한 것. Django에서는 하나의 application의 models.py)
Migration 관련 명령어 정리
1. python manage.py makemigrations <app_name>
- Migration을 생성
- <app_name>을 입력하면 해당 app에 대해서만 migration 생성, 생략하면 전체에 대해 migration 생성
- 처음 migration 실행시에는 <app_name> 생략
2. python manage.py migrate <app_name> <migration_name>
- Migration을 DB에 적용
- <app_name>을 넣으면 해당 app만 migrate
- <migration_name>을 넣으면 해당 버전의 파일만 migrate
- 이를 이용하면 이전 버전으로 되돌리는 것도 가능
3. python manage.py showmigrations <app_name>
- project의 migration 적용 여부를 한 눈에 보여줌
- '[X]' 표시가 migration이 적용된 것을 의미함
4. python manage.py sqlmigrate <app_name> <migration_name>
- 해당 파일이 어떤 SQL 구문으로 실행되는지 알 수 있음
- 보통 debugging 때 확인용으로 사용
LIST
'Computer Programming > AI' 카테고리의 다른 글
TIL_DRF에서 Meta class란? (0) | 2023.09.27 |
---|---|
TIL_Django REST Framework Project, blog 만들기(1) (0) | 2023.09.26 |
WIL_일곱 번째 주 (0) | 2023.09.22 |
TIL_Django REST Framwork, POSTMAN을 사용하는 이유 (0) | 2023.09.22 |
TIL_Django Basics, CSRF와 XSS (0) | 2023.09.21 |