千家信息网

Django2.1集成xadmin管理后台容易出现的错误总结

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,本篇内容介绍了"Django2.1集成xadmin管理后台容易出现的错误总结"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔
千家信息网最后更新 2025年01月20日Django2.1集成xadmin管理后台容易出现的错误总结

本篇内容介绍了"Django2.1集成xadmin管理后台容易出现的错误总结"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

django默认是有一个admin的后台管理模块,但是丑,功能也不齐全,但是大神给我们已经集成好了xadmin后台,我们拿来用即可,但是呢,django已经升级到2.1版本了,xadmin貌似跟不上节奏,那么在集成过程中咱就一步一步填坑吧,这也是一种学习的过程,遇到错误,找到错误的地方,看看django最新升级都修改了那些,去掉了那些,把相应出错的地方替换即可。

xadmin源码地址:https://github.com/sshwsfc/xadmin

下载并解压:

我们用到的是xadmin文件夹,将xadmin复制到项目的根目录,与项目同级别。

安装依赖库:

激活项目的虚拟环境,cd 到解压的 xadmin-master目录,运行一下代码

pip3 install -r requirements.txt

在项目settings.py设置文件中引入:

在项目的urls.py中设置

然后运行:python manage.py makemigrations 建立数据库迁移文件

这个时候就会引出一系列的错误提示

错误一:关联关系ForeignKey引发的错误,打开xadmin文件中的模型文件models.py,凡是出现关联关系字段的地方全部加上 on_delete=models.CASCADE , 如下图所示:

错误二:模块包名称合并修改引发的错误

错误提示:ModuleNotFoundError: No module named 'django.core.urlresolvers'

这是因为django2.1把from django.core.urlresolvers修改成了django.urls

那么如图所示将fromdjango.core.urlresolversimportNoReverseMatch,reverse

修改为:from django.urls import NoReverseMatch, reverse

错误三:出现如下错误提示

这是因为,django2.1.1的 forms表单初始化仅一个参数,将forms.Field.__init__(self, required, widget, label, initial, help_text, *args, **kwargs) 修改为如图所示:

错误四:ImportError: cannot import name 'login' from 'django.contrib.auth.views'

解决办法:

# 将 website.py 中的from django.contrib.auth.views import loginfrom django.contrib.auth.views import logout# 修改为from django.contrib.auth import authenticate, login, logout

错误五:ImportError: cannot import name 'QUERY_TERMS' from 'django.db.models.sql.query'

解决办法:

# django2.1.1版本将xadmin\plugins\filters.py文件中的from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS# 修改为from django.db.models.sql.query import LOOKUP_SEP, Query# 在Django2.0版本中把from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS# 修改为:from django.db.models.sql.query import LOOKUP_SEPfrom django.db.models.sql.constants import QUERY_TERMS

错误六:ModuleNotFoundError: No module named 'django.contrib.formtools' 导入fromtools错误,版本太低

解决方案:

# 卸载旧版本pip uninstall django-formtools# 安装新版本pip install django-formtools

错误七:

解决方案:

# 把xadmin\plugins\password.py中的from django.contrib.auth.views import password_reset_confirm修改为:from django.contrib.auth.views import PasswordResetConfirmView

再把位于75行左右 return后的 password_reset_confirm修改为PasswordResetConfirmView,如下图所示

错误八:AttributeError: 'Settings' object has no attribute 'MIDDLEWARE_CLASSES'

解决办法:

# 将xadmin\plugins\language.py 中的if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE_CLASSES:修改为:if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE:

最后运行:python manage.py makemigrations 创建迁移数据文件

再运行:python manage.py migrate 迁移数据库

如果在以上过程中出现类似错误,请依照错误相应修改,错误提示的先后顺序或许不一样,但是请仔细阅读错误提示代码。

"Django2.1集成xadmin管理后台容易出现的错误总结"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

错误 文件 版本 项目 提示 后台 过程 运行 管理 办法 地方 数据 代码 内容 数据库 方案 更多 模块 知识 解决方案 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全法 持证上岗 霞浦住宿软件开发 服务器的信号和性能 北大青鸟学软件开发怎 网络安全主要课程 网络技术交流会议通知的内容 内蒙古一体化智慧医养软件开发 软件开发游戏开发有前景吗 软件开发与项目管理课程 四川牟未物联网络技术有限公司 网络安全宣传手绘画教程 w中国网络安全控制中心 网络安全等级保护 3级 管理服务器功能分区说明 智慧凤盛互联网科技有限公司 合肥安徽区app软件开发 千人千面网络技术公司 国企软件开发笔试 独立完成数据库搭建需要多久 计算机网络技术B笔记 五小结一总结网络安全 实现数据库的快速更新 春考网络技术分数线 用于数据库恢复的基本技术 网络安全关于wifi的要求 杭州学习软件开发收费标准 服务器配置与管理试卷及答案 湖南商学院网络安全 轻量级云服务器安装docker 学校有哪些计算机网络技术
0