나는 (예를 들어, 테스트하기 전에) 실행하는 데 35 시간이 소요되는 앱이 있으므로 스쿼시하고 싶습니다.새로운 초기 마이그레이션을 사용하여 마이그레이션 스쿼시 사용
squashmigrations
명령은 작업을 99에서 88로 줄이지 만 최적의 상태는 아닙니다. 이것은 아마도 여러 번의 RunPython
작업으로 장고가 다른 작업을 최적화하지 못하게하기 때문일 것입니다. 이 모든 RunPython
작업은 데이터베이스가 비어있어 축소 된 마이그레이션에서는 쓸모가 없습니다. Django 1.10에서는 elidable
매개 변수가이 경우 건너 뛸 수 있지만 여전히 많은 혼란이 남아 있습니다.
그것이 마이그레이션의 긴 목록의 숙청 버전으로 신선한 초기 마이그레이션을 사용하는 것이 좋습니다 :
그러므로 내 질문에, 장고가 생성하는 초기 마이그레이션에 가까운 나는 숙청 마이그레이션 생각했던 무엇입니까? 어떻게 그럴 수 있니?
고마워요! 어떻게 초기 마이그레이션을 생성합니까? 현재의 모든 마이그레이션을 다른 폴더로 옮깁니 까? – pintoch
일반적으로 각 로컬 앱에서 '이전'폴더 만 제거합니다. 일반적으로 PostreSQL을 사용합니다. 그래서 가장 간단한 경우 나는 이것을 실행한다 :'dropdb dbname && createdb dbname && rm -rf some_application/migrations && python manage.py migrate' –