安装django-graphql-auth后Django+GraphQL应用启动失败求助
解决方案
1. 核心问题定位
报错根源是graphql_jwt(现包名为graphene-django-jwt)的旧版本依赖Django已弃用的ugettext方法——Django 4.0+ 已将ugettext移除,替换为gettext。即使卸载django-graphql-auth,如果环境中残留旧版graphql_jwt,问题会持续存在。
2. 具体修复步骤
检查并升级
graphene-django-jwt
先查看当前安装版本:pip show graphene-django-jwt安装兼容当前Django版本的最新版:
pip install --upgrade graphene-django-jwt注:Django 4.0+ 需要
graphene-django-jwt>=0.4.0;若用Django 3.x,可指定版本pip install graphene-django-jwt==0.3.0。清理环境缓存
升级后仍报错的话,清理缓存残留:- 清理Django缓存:
python manage.py clearcache - 删除项目下的
__pycache__目录:find . -name "__pycache__" -type d -exec rm -rf {} +
- 清理Django缓存:
验证依赖状态
确认无冲突旧包:pip freeze | grep -E "graphql|graphene|django"确保输出中只有
graphene-django-jwt,没有旧包名graphql-jwt残留。
内容的提问来源于stack exchange,提问作者Underoos
相关产品推荐
相关产品推荐

