【Django】Django4.1.2使用xadmin避坑指南

简介: 【Django】Django4.1.2使用xadmin避坑指南

环境

win10 python3.9.0 django4.1.2

问题一:ImportError: cannot import name ‘six‘ from ‘django.utils‘

解决办法:
如果正常安装了xadmin库的话,six库也会安装,把项目根目录/venv/Lib/site-packages/six.py复制到项目根目录/venv/Lib/site-packages/django/utils下即可。

问题二:ImportError: cannot import name 'ugettext_lazy' from 'django.utils.translation'

分析:
Django已经弃用 ugettext(), ugettext_lazy(), ugettext_noop(), ungettext(), 和 ungettext_lazy()
查看issues

解决办法:
既然选择了高版本Django,就尝试在此版本下解决问题。

它已从Django 4中删除,请使用此选项
from django.utils.translation import gettext_lazy as _

问题三:ImportError: cannot import name ‘ugettext’ from ‘django.utils.translation’

解决办法:
和问题二原因一样,改用from django.utils.translation import gettext_lazy as _, gettext,后续还会遇到几次类似问题,处理方式相同。

问题四:ImportError: cannot import name 'python_2_unicode_compatible' from 'django.utils.encoding'

解决办法:

# from django.utils.encoding import python_2_unicode_compatible, smart_text
from django.utils.encoding import smart_text
from six import python_2_unicode_compatible

问题五:ImportError: cannot import name 'pretty_name' from 'django.forms.forms'

解决办法:

# from django.forms.forms import pretty_name
from django.utils import formats, six

问题六:ImportError: cannot import name 'force_text' from 'django.utils.encoding'

解决办法:

# from django.utils.encoding import force_text, smart_text, smart_str
from django.utils.encoding import force_str, smart_str
django.utils.encoding.force_text = force_str
django.utils.encoding.smart_text = smart_str

问题七:ImportError: cannot import name 'ungettext' from 'django.utils.translation'

解决办法:

# from django.utils.translation import ungettext
from django.utils.translation import ngettext

问题八:ModuleNotFoundError: No module named 'django.contrib.staticfiles.templatetags'

解决办法:

# from django.contrib.staticfiles.templatetags.staticfiles import static
from django.templatetags.static import static

参考链接

问题九:ImportError: cannot import name 'urlquote' from 'django.utils.http'

解决办法:
http.py文件

from urllib.parse import (
    ParseResult,
    SplitResult,
    _coerce_args,
    _splitnetloc,
    _splitparams,
    scheme_chars,
    quote,
)

dashboard.py文件

# from django.utils.http import urlencode, urlquote
from django.utils.http import urlencode, quote

这个是参考Django2的源码改的,不一定正确,欢迎指正。
好像也有依据

问题十:ImportError: cannot import name 'lookup_needs_distinct' from 'django.contrib.admin.utils'

依据
The undocumented django.contrib.admin.utils.lookup_needs_distinct() function is renamed to lookup_spawns_duplicates().
解决办法:

lookup_needs_distinct替换为lookup_spawns_duplicates

问题十一:ImportError: cannot import name 'FieldDoesNotExist' from 'django.db.models.fields'

解决办法:
pip install django-advanced-filters

# from django.db.models.fields import FieldDoesNotExist
from django.core.exceptions import FieldDoesNotExist

问题十二:ImportError: cannot import name 'SKIP_ADMIN_LOG' from 'import_export.admin'

解决办法:

#from import_export.admin import DEFAULT_FORMATS, SKIP_ADMIN_LOG, TMP_STORAGE_CLASS
from import_export.admin import DEFAULT_FORMATS, ImportMixin, ImportExportMixinBase

#from import_export.admin import DEFAULT_FORMATS, SKIP_ADMIN_LOG, TMP_STORAGE_CLASS
from import_export.admin import DEFAULT_FORMATS, ImportMixin, ImportExportMixinBase

依据

到现在为止,可以正常进行数据库迁移了,已经0:34了,睡觉(¦3[▓▓] 晚安

我本以为搞定了,没想到这个文章还会出Django4.1.2使用xadmin避坑指南(二)

我把改好的xadmin源码上传了一份到GitHub上,希望能够给个star:star:!

Django4.1.2-xadmin

相关文章
|
前端开发 JavaScript Python
【Django】Django4.1.2使用xadmin避坑指南(二)
【Django】Django4.1.2使用xadmin避坑指南(二)
django2使用xadmin打造适合国人的后台管理系统(2)
在django2使用xadmin打造适合国人的后台管理系统(1)中已经集成好了xadmin,那么接下来就开始来使用xadmin以及做一些常用设置。 1.首先设置支持中文,修改settings文件中的 LANGUAGE_CODE = 'zh-hans', TIME_ZONE ='Asia/Shanghai'。
2445 0
|
Python 数据安全/隐私保护 前端开发
django2使用xadmin打造适合国人的后台管理系统(1)
       python火了之后,学习python的人也越来越多了,python做web开发的话,flask、django是比较火的框架了,django是一个比较大的框架,也是一个快速开发利器。
2257 0
|
Python 前端开发 数据库
Python3 | Django后台管理框架Xadmin安装指南
Django是python的重量级web框架,写得少,做得多,非常适合后端开发,它很大的一个亮点是,自带后台管理模块,但它自带的后台管理有点丑,而Xadmin是基于bootstrap开发的一套后台管理框架,界面非常美观,只需几步就可以替换自带的Dja...
2141 0
|
数据库 Python 关系型数据库
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
|
1月前
|
搜索推荐 前端开发 数据可视化
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
本文介绍了一个基于Django框架、协同过滤算法、ECharts数据可视化以及Bootstrap前端技术的酒店推荐系统,该系统通过用户行为分析和推荐算法优化,提供个性化的酒店推荐和直观的数据展示,以提升用户体验。
|
12天前
|
前端开发 搜索推荐 算法
中草药管理与推荐系统Python+Django网页界面+推荐算法+计算机课设系统+网站开发
中草药管理与推荐系统。本系统使用Python作为主要开发语言,前端使用HTML,CSS,BootStrap等技术和框架搭建前端界面,后端使用Django框架处理应用请求,使用Ajax等技术实现前后端的数据通信。实现了一个综合性的中草药管理与推荐平台。具体功能如下: - 系统分为普通用户和管理员两个角色 - 普通用户可以登录,注册、查看物品信息、收藏物品、发布评论、编辑个人信息、柱状图饼状图可视化物品信息、并依据用户注册时选择的标签进行推荐 和 根据用户对物品的评分 使用协同过滤推荐算法进行推荐 - 管理员可以在后台对用户和物品信息进行管理编辑
47 12
中草药管理与推荐系统Python+Django网页界面+推荐算法+计算机课设系统+网站开发
|
1月前
|
搜索推荐 前端开发 数据可视化
基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现
本文介绍了一个基于Python协同过滤算法的旅游景点推荐系统,该系统采用Django框架、MySQL数据库、Bootstrap前端和echarts数据可视化技术,旨在为用户提供个性化的旅游推荐服务,提升用户体验和旅游市场增长。
基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现
|
1月前
|
监控 BI Python
python django教学质量评价系统,实现学生、教师、管理员不同角色管理
本文介绍了一个基于Django框架开发的教学质量评价系统,该系统为学生、教师和管理员提供了不同角色的管理和评价功能,实现了教学质量的全方位评估和管理,旨在提高教育质量和促进教学改革。
python django教学质量评价系统,实现学生、教师、管理员不同角色管理