一.简介
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),
]
6.如果没有创建超级用户需要创建,我是因为已经创建了就不需要了
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安装及使用详解的文章就介绍到这了。