xadmin后台管理以及报错解决

起因

原生的admin后台管理太丑,有人美化了这个页面,就是所谓的xadmin

安装

我们使用的django版本为2.2.2,安装 xadmin, 如下:

pip install https://codeload.github.com/sshwsfc/xadmin/zip/django2

配置

在小 luffyapi/settings/dev.py中注册,如下:

# settings/dev.py

INSTALLED_APPS = [
    ...
     # xadmin主体模块
    'xadmin',
    # 渲染表格模块
    'crispy_forms',
    # 为模型通过版本控制,可以回滚数据
    'reversion',
    ...
]

数据迁移

python manage.py makemigrations
python manage.py migrate

项目主路由替换

在项目的主路由中替换原来的admin

# 主路由urls.py

# xadmin的依赖
import xadmin
xadmin.autodiscover()
# xversion模块自动注册需要版本控制的 Model
from xadmin.plugins import xversion
xversion.register_models()

urlpatterns = [
         ...
        path(r'xadmin/', xadmin.site.urls),
    ]

创建超级用户

在 Terminal 创建超级用户

# Terminal终端

python manage.py createsuperuser

这样我们就可以使用xadmin了,

报错解决

当我们执行数据库迁移命令的时候会报错:

ImportError: cannot import name 'DEFAULT_FORMATS' from 'import_export.admin' (D:\Virtualenvs\luffy\lib\site-packages\import_export\admin.py)

点击进入源代码,

将选中的那行代码注释:

# 在源代码中将下面这行代码注释掉
from import_export.admin import DEFAULT_FORMATS, SKIP_ADMIN_LOG, TMP_STORAGE_CLASS

并在源代码中写上下面两行代码:

# 在源代码中写下面两行代码

from import_export.formats.base_formats import DEFAULT_FORMATS
from import_export.admin import ImportMixin, ImportExportMixinBase

这样,就解决了xadmin报错问题

posted @ 2022-05-29 14:35  _yessir  阅读(228)  评论(0编辑  收藏  举报