首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从“force_text”导入“django.utils.encoding”错误

从“force_text”导入“django.utils.encoding”错误
EN

Stack Overflow用户
提问于 2021-12-16 16:01:15
回答 6查看 31.5K关注 0票数 38

我正在使用python、graphene和django实现graphql解决方案,并得到以下导入错误:

代码语言:javascript
运行
复制
Result: Failure Exception: ImportError: cannot import name 'force_text' from 'django.utils.encoding'

"/home/site/wwwroot/.python_packages/lib/site-packages/graphene_django/utils/utils.py", line 6, in <module> from django.utils.encoding import force_text

我不确定版本以及是否需要导入额外的模块。我的requirements.txt就像:

代码语言:javascript
运行
复制
graphene>=2.1,<3
graphene-django>=2.1,<3
graphql-core>=2.1,<3
graphql-relay==2.0.1
django-filter>=2

有人有类似的问题,可以查看我使用的版本吗?谢谢

EN

Stack Overflow用户

发布于 2021-12-17 07:58:37

在django 4.0中,我们没有force_text

https://docs.djangoproject.com/en/4.0/ref/utils/#module-django.utils.encoding

相反,将force_text改为force_str

linux:

YOUR_VENV/lib/PYTHON_VERSION/site-packages/graphene_django/utils/utils.py

窗户:

YOUR_VENV/lib/site-packages/graphene_django/utils/utils.py

代码语言:javascript
运行
复制
from django.utils.encoding import force_text

代码语言:javascript
运行
复制
from django.utils.encoding import force_str

代码语言:javascript
运行
复制
def _camelize_django_str(s):
    if isinstance(s, Promise):
        s = force_text(s)
    return to_camel_case(s) if isinstance(s, six.string_types) else s

代码语言:javascript
运行
复制
def _camelize_django_str(s):
    if isinstance(s, Promise):
        s = force_str(s)
    return to_camel_case(s) if isinstance(s, six.string_types) else s
票数 64
EN
查看全部 6 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70382084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档