Django执行迁移时已安装rest_framework_simplejwt仍报ModuleNotFoundError
Django迁移报错ModuleNotFoundError: No module named 'rest_framework_simplejwt'
执行Django迁移操作时触发如下错误:
ModuleNotFoundError: No module named 'rest_framework_simplejwt'
已通过pip验证库已安装:
pip show djangorestframework-simplejwt Name: djangorestframework-simplejwt Version: 3.2.2 Summary: A minimal JSON Web Token authentication plugin for Django REST Framework Home-page: https://github.com/davesque/django-rest-framework-simplejwt Author-email: davesque@gmail.com License: MIT Location: \Programs\Python\Python311\Lib\site-packages Requires: django, djangorestframework, pyjwt Required-by:
settings.py中INSTALLED_APPS已包含相关应用:
INSTALLED_APPS = [ 'app', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'corsheaders', 'rest_framework', 'rest_framework_simplejwt', 'rest_framework_simplejwt.token_blacklist' ]
REST_FRAMEWORK认证配置如下:
REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework_simplejwt.authentication.JWTAuthentication', ) }
SIMPLE_JWT详细配置:
from datetime import timedelta SIMPLE_JWT = { "ACCESS_TOKEN_LIFETIME": timedelta(minutes=5), "REFRESH_TOKEN_LIFETIME": timedelta(days=1), "ROTATE_REFRESH_TOKENS": True, "BLACKLIST_AFTER_ROTATION": True, "UPDATE_LAST_LOGIN": False, "ALGORITHM": "HS256", "SIGNING_KEY": SECRET_KEY, "VERIFYING_KEY": "", "AUDIENCE": None, "ISSUER": None, "JSON_ENCODER": None, "JWK_URL": None, "LEEWAY": 0, "AUTH_HEADER_TYPES": ("Bearer",), "AUTH_HEADER_NAME": "HTTP_AUTHORIZATION", "USER_ID_FIELD": "id", "USER_ID_CLAIM": "user_id", "USER_AUTHENTICATION_RULE": "rest_framework_simplejwt.authentication.default_user_authentication_rule", "AUTH_TOKEN_CLASSES": ("rest_framework_simplejwt.tokens.AccessToken",), "TOKEN_TYPE_CLAIM": "token_type", "TOKEN_USER_CLASS": "rest_framework_simplejwt.models.TokenUser", "JTI_CLAIM": "jti", "SLIDING_TOKEN_REFRESH_EXP_CLAIM": "refresh_exp", "SLIDING_TOKEN_LIFETIME": timedelta(minutes=5), "SLIDING_TOKEN_REFRESH_LIFETIME": timedelta(days=1), "TOKEN_OBTAIN_SERIALIZER": "rest_framework_simplejwt.serializers.TokenObtainPairSerializer", "TOKEN_REFRESH_SERIALIZER": "rest_framework_simplejwt.serializers.TokenRefreshSerializer", "TOKEN_VERIFY_SERIALIZER": "rest_framework_simplejwt.serializers.TokenVerifySerializer", "TOKEN_BLACKLIST_SERIALIZER": "rest_framework_simplejwt.serializers.TokenBlacklistSerializer", "SLIDING_TOKEN_OBTAIN_SERIALIZER": "rest_framework_simplejwt.serializers.TokenObtainSlidingSerializer", "SLIDING_TOKEN_REFRESH_SERIALIZER": "rest_framework_simplejwt.serializers.TokenRefreshSlidingSerializer", }
已尝试以下操作但未解决问题:
- 安装不同版本的djangorestframework-simplejwt
- 多次验证库的安装状态
- 反复检查settings.py中的各项配置
目前无法定位问题根源,希望得到排查思路或解决方案。
内容的提问来源于stack exchange,提问作者user25730724
相关产品推荐
相关产品推荐

