장고 primary key 오류 메시지
598
작성한 질문수 12
답변 1
0
안녕하세요.
장고 3.2 부터 auto field의 타입을 지정할 수 있는 기능이 생겼습니다. auto field는 장고 모델에서 디폴트 pk 필드로서 사용이 됩니다. 3.2 이전에서는 django.db.models.AutoField 였으며, 3.2 부터는 django.db.models.BigAutoField가 됩니다.
관련 공식문서 : https://docs.djangoproject.com/ko/4.0/releases/3.2/#customizing-type-of-auto-created-primary-keys
아마도 장고 3.2 이전 버전으로 현재 프로젝트를 생성하셨고, 지금 서버 구동 시에는 장고 3.2 이상을 설치하신 듯 보입니다. 강의에서는 3.0.x 기준으로 설명드리고 있습니다.
장고 3.2 이상에서는 프로젝트를 생성하시면 settings에 DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" 설정이 자동으로 추가됩니다.
그런데 장고 3.2 이전에 생성하신 각종 모델들은 django.db.models.AutoField 타입으로 되어있습니다. BigAutoField 타입으로 지정하시면 추가적으로 타입 변경을 위한 DB 마이그레이션이 필요합니다.
장고 3.2 이상을 쓰신다면
settings에 DEFAULT_AUTO_FIELD = "django.db.models.AutoField" 설정을 추가하고, 별도의 DB마이그레이션없이 프로젝트를 진행하다가 BigAutoField가 필요한 시점에 설정을 변경해서 DB마이그레이션을 수행하셔도 되구요.
혹은 지금 BigAutoField로 변경하셔서 DB마이그레이션을 수행하셔야 됩니다.
그리고, 질문 제목에는 본 질문을 요약해서 써주시면, 다른 분들에게도 본 질문이 도움이 될 수 있습니다. 부탁드리겠습니다.
화이팅입니다. :-)
안녕하세요.
0
62
1
[OneToOne Field Demo] get_user_model() 메서드를 활용해야 하는 이유?
0
282
1
useEffect 훅에서 else 유무에 따른 결과
0
221
1
useAxios 훅의 dependency array 설정
0
254
1
useEffect에서 변수 업데이트 관련 질문
0
388
1
rest_framework.generics.CreateAPIView의 model 속성 유무
0
273
1
bootstrap4
0
479
4
리뉴얼 강의가 오픈이 되면 기존 강의는 더이상 못보는걸까요
1
373
1
admin form에서 앞선 필드 선택 후 다른 필드 select widget 구성하는 방법
0
577
3
useState는 필수일까요?
0
269
1
python manage.py makemigrations instagram 시 created_at default 오류가 발생합니다.
0
606
4
Django allauth를 사용한 소셜 로그인 시 에러
0
657
1
프로젝트명 변경 뒤, 디버그툴바+디버그모드 사용 시 에러
0
561
2
useLocalStorage() 함수 사용여부
0
233
1
django에 LOGIN_URL = '/accounts/login/'의 의미?
0
451
1
리듀서의 의미 재확인
0
435
1
simple-jwt Refresh Token 사용 노하우
0
903
2
docker compose 를 통한 배포 관련 오류 문의
0
683
1
파이썬 속도 장고 관련 궁금한게 있습니다.
0
368
1
is_like_user
0
237
1
related_name 오류
0
276
1
re_path 오류
0
263
1
re_path url
0
252
1
No post matches the given query
0
667
2





