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报错问题