Django xadmin安装及使用详解


Posted in Python onOctober 26, 2020

一.简介

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字段,一般就是用来标识一下字段是不是被删除了,但是数据库中不删除

到此这篇关于Django xadmin安装及使用详解的文章就介绍到这了,更多相关Django xadmin安装使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
详解Python中的变量及其命名和打印
Mar 11 Python
Python读写docx文件的方法
May 08 Python
《与孩子一起学编程》python自测题
May 27 Python
浅谈Python在pycharm中的调试(debug)
Nov 29 Python
selenium+python自动化测试环境搭建步骤
Jun 03 Python
在windows下使用python进行串口通讯的方法
Jul 02 Python
Python shutil模块用法实例分析
Oct 02 Python
Python中xml和dict格式转换的示例代码
Nov 07 Python
Python Pandas 转换unix时间戳方式
Dec 07 Python
快速解决jupyter notebook启动需要密码的问题
Apr 21 Python
python如何求100以内的素数
May 27 Python
Python+OpenCV检测灯光亮点的实现方法
Nov 02 Python
python实现网页录音效果
Oct 26 #Python
python实现录音功能(可随时停止录音)
Oct 26 #Python
Python用dilb提取照片上人脸的示例
Oct 26 #Python
python用tkinter实现一个gui的翻译工具
Oct 26 #Python
Docker如何部署Python项目的实现详解
Oct 26 #Python
python Gabor滤波器讲解
Oct 26 #Python
详解基于python的图像Gabor变换及特征提取
Oct 26 #Python
You might like
截获网站title标签之家内容的例子
2006/10/09 PHP
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
PHP二维数组的去重问题解析
2011/07/17 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
2014/08/22 PHP
PHP 实现代码复用的一个方法 traits新特性
2015/02/22 PHP
详解PHP 7.4 中数组延展操作符语法知识点
2019/07/19 PHP
PHP各种常见经典算法总结【排序、查找、翻转等】
2019/08/05 PHP
Laravel-admin之修改操作日志的方法
2019/09/30 PHP
构造函数+原型模式构造js自定义对象(最通用)
2014/05/12 Javascript
javascript实现树形菜单的方法
2015/07/17 Javascript
浅谈Javascript数据属性与访问器属性
2016/07/26 Javascript
JQueryEasyUI之DataGrid数据显示
2016/11/23 Javascript
Bootstrap复选框和单选按钮美化插件(推荐)
2016/11/23 Javascript
jQuery判断邮箱格式对错实例代码讲解
2017/04/12 jQuery
JavaScript实现三级联动效果
2017/07/15 Javascript
在AngularJs中设置请求头信息(headers)的方法及不同方法的比较
2018/09/04 Javascript
15分钟深入了解JS继承分类、原理与用法
2019/01/19 Javascript
深入Node TCP模块的理解
2019/03/13 Javascript
JavaScript面向对象中接口实现方法详解
2019/07/24 Javascript
Vue 中 a标签上href无法跳转的解决方式
2019/11/12 Javascript
JavaScript的console命令使用实例
2019/12/03 Javascript
一看就会的vuex实现登录验证(附案例)
2020/01/09 Javascript
[53:15]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS TNC
2018/03/30 DOTA
Python实现的数据结构与算法之快速排序详解
2015/04/22 Python
python实现自动登录人人网并采集信息的方法
2015/06/28 Python
python动态加载包的方法小结
2016/04/18 Python
浅谈python 导入模块和解决文件句柄找不到问题
2018/12/15 Python
python之验证码生成(gvcode与captcha)
2019/01/02 Python
Python 一键制作微信好友图片墙的方法
2019/05/16 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
如何使用python自带IDLE的几种方法
2020/10/10 Python
印度尼西亚在线时尚购物网站:ZALORA印尼
2016/08/02 全球购物
大学生简历的个人自我评价
2013/12/04 职场文书
补充协议书范本
2014/04/23 职场文书
浅谈MySQL user权限表
2021/06/18 MySQL
VUE使用draggable实现组件拖拽
2022/04/06 Vue.js