Django models.py 에서 마이그레이션한 테이블 이름 수정하는 방법

개발자 강세영·2022년 5월 6일
0

TIL

목록 보기
18/66

Django models.py 파일에서 ORM 코드를 써놓고
python manage.py makemigrations
python manage.py migrate
하면 models.py에 써놓은 ORM 코드들이 실제로 적용되어 DB에 테이블들이 생성된다

여기까지 해놓고 models.py에서 테이블 이름을 잘못친게 있어서 고치려고 했는데 테이블에 데이터들이 들어가있어서 마이그레이션이 안됐던거 같다 그래서 잘못된 방법을 사용했는데 바로 mysql에서 직접 이름이 잘못된 테이블을 drop시키고 장고로 다시 마이그레이션을 하는 방법이었다

그런데 실제로 해보니 적용이 안되고 계속 같은 오류코드가 나왔다. 뭔가 마이그레이션을 꼬이게 만드는 잘못된 방법인것 같았고 결국 DB를 통째로 지우고 처음부터 다시할수밖에 없었다

제대로 하는 방법은 그냥 models.py에서 해당 클래스의 메타데이터 등을 수정하고 다시 마이그레이션을 하면 된다고 한다.

예를 들면

class Meta:
	db_table = 'answer' -> 'answers'로  수정 하고 마이그레이션

0개의 댓글