항상 migrations폴더의 내용과 db.sqlite3를 날리고 했다. 하지만 불편하게 이만저만이 아니였다. db관련 오류가 발생하면 오류와 해결방법을 적으려고 한다.
1. wagtail video 오류
-> media 폴더의 original_video폴더를 지우면 된다. 아마 의존성 오류가 발생인데 video관련 테이블이 생성되기도 전에 video가 있어서 생기는 오류이다.
2. table 생성관련 오류
-> 기존 모델을 지우고 새로운 모델을 생성할 때, 단순히 모델의 이름을 바꾸는 것이 아니라 새로운 필드와 관계형 모델을 설정할 때, migrations적용할 때, 이름만 바꾸겠냐고 물어보면 no를 해야한다.
그리고 혹여나 오류가 발생했을 때에는 오류의 내용을 잘 읽어보고 해결하면 된다. 대부분 관련 모델의 테이블을 직접 db에서 삭제를 해주면 된다. 그리고 모든 app의 migrations 폴더의 __init__.py만 남겨두고 삭제한다.
이후에 migrations와 migrate만 실행하면 문제가 없을 것이다.
python manage.py dbshell -> db shell 접속
python manage.py migrate user -> user app만 migrate 진행
'Back-End' 카테고리의 다른 글
Django Ninja Authentication(Bearer) (0) | 2021.12.16 |
---|