脚本专栏 
首页 > 脚本专栏 > 浏览文章

Django xadmin安装及使用详解

(编辑:jimmy 日期: 2024/11/17 浏览:3 次 )

一.简介

xadmin 是一个开源项目。 针对于 django admin ,页面美化程度,功能不完善 等问题 , 额外开发的一个模块。目前 xadmin 的最新版本已经是 xadmin 3.0 ,但是 xadmin 3.0 已经变成了一个纯前端项目,有兴趣的同学可以自己研究下。目前 作者已经不对 xadmin 2.0 做版本维护了,所以社区并不是很好,建议选择 其他的持续维护的开源项目。

文档:https://xadmin.readthedocs.io/en/latest/index.html

二.安装

环境:python 3.6
Django 2.2

1.通过如下命令安装xadmin的最新版,它文档里面的安装方法好久没有更新了,会导致你安装不成功,所以我们使用下面的网址进行安装

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

2.在配置文件中注册如下应用

INSTALLED_APPS = [
  ...
  'xadmin',
  'crispy_forms',
  'reversion',
  ...
]

3.修改语言和时区

# 修改使用中文界面
LANGUAGE_CODE = 'zh-Hans'

# 修改时区
TIME_ZONE = 'Asia/Shanghai'

4.xadmin有建立自己的数据库模型类,需要进行数据库迁移

友情提示:在执行这一步时先到配置文件看一下自己当前Django版本

我的原本是Django2.2版本,安装完xadmin后自动给我升级为3.2版本,导致执行数据库迁移命令时报错

python3 manage.py makemigrations
python3 manage.py migrate

5.配置路由信息

import xadmin
xadmin.autodiscover()

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

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

7.如果没有创建超级用户需要创建,我是因为已经创建了就不需要了

python3 manage.py createsuperuser

三.全局配置

import xadmin
from xadmin import views

class BaseSetting(object):
  """xadmin的基本配置"""
  enable_themes = True # 开启主题切换功能
  use_bootswatch = True # 引导控制盘(其实就是我们的左侧菜单栏)

xadmin.site.register(views.BaseAdminView, BaseSetting)

class GlobalSettings(object):
  """xadmin的全局配置"""
  site_title = "kuokay" # 设置站点标题
  site_footer = "kuokay学python" # 设置站点的页脚
  menu_style = "accordion" # 设置菜单折叠

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

站点Model管理

xadmin可以使用的页面样式控制基本与Django原生的admin一直。

可以在models类中定义个__str__方法来定义对象显示成什么内容

  • list_display 控制列表展示的字段
  • search_fields 控制可以通过搜索框搜索的字段名称,xadmin使用的是模糊查询
  • list_filter 可以进行过滤操作的列,对于分类、性别、状态
  • ordering 默认排序的字段
  • show_detail_fields 在列表页提供快速显示详情信息
  • list_editable 在列表页可以快速直接编辑的字段
  • refresh_times 指定列表页的定时刷新
  • list_export 控制列表页导出数据的可选格式
  • show_bookmarks 控制是否显示书签功能
  • data_charts 控制显示图表的样式
  • model_icon 控制菜单的图标【图标的设置可以参考font-awesome的图标css名称】
  • readonly_fields 在编辑页面的只读字段
  • exclude 在编辑页面隐藏的字段,比如判断这个数据是否删除的delete_status字段,一般就是用来标识一下字段是不是被删除了,但是数据库中不删除
上一篇:python 爬虫基本使用——统计杭电oj题目正确率并排序
下一篇:如何使用Pytorch搭建模型
一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap