我安装了djangorestframework如下图:
pip install djangorestframework -jwt
然后,我使用了
rest_framework_jwt.views
,如下所示:
from rest_framework_jwt.views import (
obtain_jwt_token,
refresh_jwt_token,
verify_jwt_token
)
...
path('auth-jwt/', obtain_jwt_token),
path('auth-jwt-refresh/',refresh_jwt_token),
path('auth-jwt-verify/', verify_jwt_token),
...
但是,我收到以下错误:
导入错误:无法从“django.utils.translation”导入名称“ugettext”
那么,我该如何解决这个错误呢?
从 .serializers 导入 (
文件“*\lib\site-packages
est_framework_jwt\serializers.py”,第 7 行,在
从 django.utils.translation 导入 ugettext as _
ImportError:无法从 'django.utils.translation' 导入名称 'ugettext' (c:\users\dell\downloads\djangoEnvs\djangoEnv\lib\site-packages\django\utils ranslation_init_.py)
解决上述问题有两种方法:
方式1:(不推荐的方法)
步骤:
打开回溯中的最后一个文件(
在此文件中,将 ugettext 替换为 --> gettext
享受编码的乐趣!!! :)
更换前:
从 django.utils.translation 导入 ugettext as _
更换后:
从 django.utils.translation 导入 gettext as _
方式2:(推荐方法)
步骤是:
import django
from django.utils.translation import gettext
django.utils.translation.ugettext = gettext
升级 djangorestframework-jwt 将解决该错误:
pip install djangorestframework-jwt --upgrade