ImportError: Could not import 'rest_framework_jwt.authentication.JSONWebTokenAuthentication' for API setting 'DEFAULT_AUTHENTICATION_CLASSES'. ImportError: cannot import name 'smart_text' from 'django.utils.encoding'
DRF 로그인 기능 구현을 하던 중 위와 같은 오류가 발생했다.
해당 오류에 대한 여러 답변이 있었지만 나에게는 해당되지 않아 찾아보던 중 한 글을 보게 되엇다.
https://www.inflearn.com/questions/482303
rest_framework_jwt를 임포트할 수 없다는 에러가 발생합니다 - 인프런 | 질문 & 답변
안녕하세요? 강의 잘 듣고 있습니다. 강의 11분경 즈음 rest_framework_jwt에러가 발생합니다 가상환경에 알맞게 설치되었는지는 확인했고 / 혹시나 해서 pip uninstall후 다시 install까지 해봣는데도 에
www.inflearn.com
장고 버전 4부터 지원이 되지 않는다는 글이었다.
혹시나 하는 마음에 djangorestframework_jwt 폴더를 확인해보았다.
requirements를 확인해보니 실제로 Django 버전 4에 대한 언급이 없음을 확인할 수 있었다.
이에 버전 3에서도 구현을 진행해도 문제가 없음을 확인하고
pip install django==3.2
터미널에 위 코드를 넣어 장고 버전 3으로 변경해주었다. 참고로 자동으로 기존 버전 uninstall 후 install 해주므로 따로 다운그레이드에 대한 방법을 고민하지 않아도 된다. (하지만 내가 그걸 고민하느라 시간을 꽤 썼다)
이후 JWT가 정상 작동함을 확인할 수 있었다.
항상 버전 확인은 중요하다...
'Framework > Django' 카테고리의 다른 글
[Django] 마이그레이션 오류 해결하기: django.db.migrations.exceptions.InconsistentMigrationHistory (0) | 2022.03.27 |
---|---|
[DRF] 회원가입 로그인 기능 구현하기(1) (0) | 2022.03.26 |
Django 배포 과정 오류 해결 과정 (Heroku, pythonAnywhere) (0) | 2021.08.11 |