IT/Django
Django migration 파일들 합치기(migrations squash)
bepuri
2022. 4. 12. 10:12
728x90
Django ORM은 엄청나다. ORM을 통해서 마이그레이션 파일들도 자동으로 생성해주는데,
물론 이 파일을 통해서 마이그레이션을 진행할 때, 유의해야할 것들이 있다.
하위호환
- 마이그레이션을 잘못진행하면 실 서버 배포시 DB업데이트와 view단 코드가 호환되지 않아서 서버 오류가 날 수 있기에 유의해야한다.
아무튼 이 부분을 해결했다면, 테스트 중에 migration 파일들이 여러개 생길 수도 있는데 뭣도 모를땐 그냥 github에 생성되는데로 올렸다.
migration 파일 합치기
근데 점점 코드량이 많아지고 코드를 잘 관리하려고 하다보니 나중엔 꼭 나눌 필요 없는 마이그레이션 파일들은 하나로 합쳐야겠다는 생각이 들었다.
python manage.py squashmigrations <appname> <squashfrom> <squashto>
python manage.py squashmigrations example 0003 0004
위와 같이 사용하면되고, 자세한 메뉴얼 및 stackoverflow의 유용한 답변 링크도 남긴다.
https://docs.djangoproject.com/en/3.2/topics/migrations/#squashing-migrations
https://stackoverflow.com/questions/40028586/how-to-squash-recent-django-migrations
728x90