xadmin后台管理

安装

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

注册app

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

xadmin:需要自己的数据库模型类,完成数据库迁移

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),
]

完成xadmin全局配置:新建adminx.py

# home/adminx.py
# xadmin全局配置
import xadmin
from xadmin import views

class GlobalSettings(object):
    """xadmin的全局配置"""
    site_title = "Genral_zy"  # 设置站点标题
    site_footer = "xxx有限公司"  # 设置站点的页脚
    menu_style = "accordion"  # 设置菜单折叠

xadmin.site.register(views.CommAdminView, GlobalSettings)

在adminx.py中注册model:adminx.py

from . import models
# 注册
xadmin.site.register(models.Banner)

报错处理

Traceback (most recent call last):
File "manage.py", line 22, in
execute_from_command_line(sys.argv)
File "F:\envs\luffy\lib\site-packages\django\core\management_init_.py", line 381, in execute_from_command_line
utility.execute()
File "F:\envs\luffy\lib\site-packages\django\core\management_init_.py", line 357, in execute
django.setup()
File "F:\envs\luffy\lib\site-packages\django_init_.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "F:\envs\luffy\lib\site-packages\django\apps\registry.py", line 122, in populate
app_config.ready()
File "F:\envs\luffy\lib\site-packages\xadmin\apps.py", line 14, in ready
self.module.autodiscover()
File "F:\envs\luffy\lib\site-packages\xadmin_init_.py", line 49, in autodiscover
register_builtin_plugins(site)
File "F:\envs\luffy\lib\site-packages\xadmin\plugins_init_.py", line 41, in register_builtin_plugins
[import_module('xadmin.plugins.%s' % plugin) for plugin in PLUGINS if plugin not in exclude_plugins]
File "F:\envs\luffy\lib\site-packages\xadmin\plugins_init_.py", line 41, in
[import_module('xadmin.plugins.%s' % plugin) for plugin in PLUGINS if plugin not in exclude_plugins]
File "c:\users\ncg\appdata\local\programs\python\python36\lib\importlib_init_.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 978, in _gcd_import
File "", line 961, in _find_and_load
File "", line 950, in _find_and_load_unlocked
File "", line 655, in _load_unlocked
File "", line 678, in exec_module
File "", line 205, in _call_with_frames_removed
File "F:\envs\luffy\lib\site-packages\xadmin\plugins\importexport.py", line 48, in
from import_export.admin import DEFAULT_FORMATS, SKIP_ADMIN_LOG, TMP_STORAGE_CLASS
ImportError: cannot import name 'SKIP_ADMIN_LOG'

在这里插入图片描述

解决:
把 48行复制一行然后注释掉,在49行里 去掉 SKIP_ADMIN_LOG, TMP_STORAGE_CLASS,换成 ImportMixin
为什么要换成这个是因为 ImportMixin 这个类里写了 skip_admin_log 和 tmp_storage_class 方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Generalzy

文章对您有帮助,倍感荣幸

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值