에러 03

·2023년 9월 1일
0

에러

목록 보기
3/24

django.db.utils.IntegrityError: FOREIGN KEY constraint failed


토핑을 업로드 하고 save 버튼을 누르니

이런 에러가 발생했다 ㅠㅠ

찾아보니 DO_NOTHING 을 하는 것은 권장하지 않는다 뭐 이런 얘기가 있던데 난 관리자 페이지에서 등록을 하려던 거라 DO_NOTHING 관련 문제는 아니었다.
참고 : https://stackoverflow.com/questions/67625055/integrityerror-foreign-key-constraint-failed-in-django

다시 보니 장고가 superuser 을 잘 인식하지 못하여 발생하는 문제라고 한다.

해결

오른쪽의 db.sqlite3 과 왼쪽 venv 폴더 아래의 db.sqlite3 을 모두 삭제한 다음, 우리가 만들어준 app 의 migration 폴더 내의 파일들을 __init__.py 를 제외하고 모두 지워준다.

이런 상태가 되어야 한다.

다 지운 뒤에는 터미널에

python manage.py makemigrations
python manage.py migrate

를 차례대로 입력하여 db를 다시 새롭게 인식시킨다.

적용이 다시 된 것을 확인할 수 있다.

이 뒤에

python manage.py createsuperuser

를 다시 입력하여 슈퍼유저를 생성해준다.

  • db.splite3 삭제 시 리팩토링 화면이라면서 뭐가 나올텐데, 리팩도링 확인을 눌러 제대로 삭제한 뒤 확인해줘야 한다.

이 뒤 다시 /admin 에 접속해 데이터를 저장해보면 잘 수행되는 것을 확인할 수 있다.

profile
공부 중

0개의 댓글

관련 채용 정보