首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在安装django管理图表后,我对smart_text有一个错误。

在安装django管理图表后,我对smart_text有一个错误。
EN

Stack Overflow用户
提问于 2022-03-23 15:24:56
回答 3查看 4.1K关注 0票数 2

我想在管理面板中有图表,我安装了django-admin-charts包,上面写着将这些添加到settings.py

代码语言:javascript
运行
复制
INSTALLED_APPS = (
         'admin_tools_stats', # this must be BEFORE 'admin_tools' and 'django.contrib.admin'
         'django_nvd3',
)

但是,在添加它之后,它会产生以下错误:

代码语言:javascript
运行
复制
ImportError: cannot import name 'smart_text' from 'django.utils.encoding' (E: \ test1 \ venv1 \ lib \ site-packages \ django \ utils \ encoding.py)

我搜索了一下,但没有找到多少关于smart_text的东西!可能是Django版本4或PythonVersion3.10.3有问题吗?

EN

回答 3

Stack Overflow用户

发布于 2022-05-27 07:58:13

这是因为django管理图表需要smart_text,而在django 4中,smart_text被从utils/编码中删除,因此解决这个问题的更好方法是将此代码添加到settings.py文件中。

代码语言:javascript
运行
复制
import django
from django.utils.encoding import smart_str
django.utils.encoding.smart_text = smart_str
票数 7
EN

Stack Overflow用户

发布于 2022-05-04 10:26:38

我仔细研究了一下,问题似乎是Django版本。smart_text函数不在django/utils/encoding.py文件中。我将级别从4.0.2降到3.2.13,将PyMemcacheCache设置为settings.py中的默认缓存,它可以工作。在我的情况下,降级是不能接受的Django。3.2.13不支持redis缓存,但它可能会对您有所帮助。让我们希望Django -管理图表将为Django 4.0添加支持。

票数 1
EN

Stack Overflow用户

发布于 2022-09-19 15:11:34

当我们从Django 2.2版本切换到Django 4版本时,我得到了这个错误。有一个图书馆没有升级。通过在项目范围下搜索"django.utils.encoding导入smart_text“语句的用法,我发现了这一点。

当我将django-wkhtmltopdf库从3.3.0升级到3.4.0后,这个问题就解决了。

检查是否有任何依赖库,并按上面的方式升级以修复此问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71589827

复制
相关文章

相似问题

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