django3.x.x + python3.8 将admin改为xadmin详细步骤

1.下载xadmin

本人在网上试过各版本的xadmin ,最后用了该博客的下载地址
下载地址:xadmin

解压后的文件

解压后的文件
其中requirements.txt我增加了一部分依赖包 ,其中有一些是自己一个小项目 的依赖包,给你们借鉴一下,若是不清楚用哪些,可以自己手打更改一下(django的版本可以依照自己项目的来 3.0+就行)
在这里插入图片描述

2.将xadmin和requirements.txt放到项目根路径中

可以新建虚拟环境 或者直接下载依赖包 总之将requirements.txt中的依赖包安装上
在这里插入图片描述

3.更改settings.py中的配置

新增组件
在这里插入图片描述
更改urls.py 中的
在这里插入图片描述

这个时候可以尝试运行一下项目 一般会报以下错误

在这里插入图片描述
点击蓝色的链接 进入到importexport.py文件中
将 DEFAULT_FORMATS 删除掉
然后在其下面新增代码

from import_export.formats.base_formats import DEFAULT_FORMATS

在这里插入图片描述
再次运行 可能会报这个错误

  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "E:\pyCharmProject\hengda\xadmin\plugins\importexport.py", line 48, in <module>
    from import_export.admin import DEFAULT_FORMATS, SKIP_ADMIN_LOG, TMP_STORAGE_CLASS
ImportError: cannot import name 'SKIP_ADMIN_LOG' from 'import_export.admin' (D:\Anaconda\envs\hengda\lib\site-packages\import_export\admin.py)

依然是点击蓝色的链接 进入到importexport.py文件中

然后在里面找到 def get_skip_admin_log(self)方法和get_tmp_storage_class(self), 注释掉 并且新增以下代码

    def test(self):
        if self.aaa is None:
            return ImportMixin(ImportExportMixin).get_skip_admin_log()
        else:
            return self.aaa

在这里插入图片描述
再次运行项目应该没有错误了

数据迁移

执行

makemigrations
migrate

再次运行项目 打开 /xadmin 即可成功

补充

我自己遇到一个bug 可能也是这个xadmin和我的不适配
在切换主题时 Loading them界面会一直在 只有自己主动刷新 主题效果才能出现
在这里插入图片描述
因本人实力有限 只想到直接在代码中加入 window.location.reload()的方法
这样虽然可以达到效果 ,但是你在中途做的一些标选用户的操作就保存不了
不知道原本的是异步刷新还是整个网页刷新 ,会的大佬可以评论跟我说一下,谢谢
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值