Xadmin 组件基础使用以及全局配置
xadmin 的安装
方式一 pip 安装
会因为编码问题导致报错 因此需要下载 更改 README.rst 后本地安装
详情点击这里
方式二 源码方式安装
在 github 上下载源码后 将 xadmin app 包直接以 第三方 app 的形式填入到我们的项目中
当然需要 settings.py 中注册
详情往下看简单使用示例
xadmin 简单使用
第一步 settings.py 设置
里面的添加 app
需要加两个
'xadmin',
'crispy_forms',
第二步 设置路由
urlpatterns = [
# url(r'^admin/', admin.site.urls),
url(r'^xadmin/', xadmin.site.urls),
]
第三步 初始表创建
如果没有创建直接使用会有 1146 的报错

因此需要
python manage.py makemigrations
python manage.py migrate
第四步 注册表
新建一个 adminx.py 替代 admin.py ( 随意删除 )
然后注册和 admin 类似
import xadmin from .models import UserAsk, UserCourse, UserMessage, CourseComments, UserFavorite # 用户咨询注册
class UserAskAdmin(object):
list_display = ['name', 'mobile', 'course_name', 'add_time']
search_fields = ['name', 'mobile', 'course_name']
list_filter = ['name', 'mobile', 'course_name', 'add_time'] xadmin.site.register(UserAsk, UserAskAdmin)
第五步 登录web查看
访问 127.0.0.1:8000/xadmin 自己设置的 url 访问
需要一个 super账号
创建也是从 manage.py 中 createsuperuser

登录后就可以看到相关的被注册的表可以进行后台数据操作了

Xadmin 全局配置
使能主题相关功能
在任意的 adminx.py 中做以下配置
from xadmin import views class BaseSetting(object):
enable_themes = True # 打开主题功能
use_bootswatch = True # 打开可选主题库 xadmin.site.register(views.BaseAdminView, BaseSetting)
更改显示名字以及按APP折叠
# 更改后台默认显示信息
class GlobalSetting(object):
site_title = "羊驼后台管理系统" # 左上角显示信息
site_footer = "羊驼总经联合协会" # 最下面公司信息
menu_style = "accordion" # 左侧表名按 APP 折叠 xadmin.site.register(views.CommAdminView, GlobalSetting)
调整 app 显示名字
此功能与 Xadmin 本身无关, 是 django 自带的机制
需要修改 每个 APP 下的 init 和 apps

apps.py 下 添加 verbose_name
from django.apps import AppConfig class UsersConfig(AppConfig):
name = 'users'
verbose_name = "用户信息" # 设置显示名字
__init__.py 中 加入使能的配置类
default_app_config = "users.apps.UsersConfig"
Xadmin 组件基础使用以及全局配置的更多相关文章
- vue-cli项目中使用mockjs(基础使用和全局配置使用)
参考:vue+mockjs 模拟数据,实现前后端分离开发 (Github-Demo可查看全部代码),Mockjs ,Axios 很多时候前后端分离的项目在开发过程中前端所需数据和后端接口并不会同步开发 ...
- 小程序基础02:全局配置app.json
1.配置 我们使用app.json文件来对来微信小程序进行全局配置. 作用:他决定了页面文件的路径,窗口表现,设置网络超时时间,设置多tab等 每一个小程序页面也可以使用 .json 文件来对本页面的 ...
- Vue基础二之全局API、实例属性和全局配置,以及组件进阶(mixins)的详细教程(案列实现,详细图解,附源码)
本篇文章主要是写Vue.directive().Vue.use()等常用全局API的使用,vm.$props.vm.$options.vm.$slots等实例属性的使用,以及Vue全局配置.组件的mi ...
- 框架基础:ajax设计方案(六)--- 全局配置、请求格式拓展和优化、请求二进制类型、浏览器错误搜集以及npm打包发布
距离上一次博客大概好多好多时间了,感觉再不搞点东西出来,感觉就废了的感觉.这段时间回老家学习驾照,修养,然后7月底来上海求职(面了4家,拿了3家office),然后入职同程旅游,项目赶进度等等一系列的 ...
- vue全局配置----小白基础篇
今天学习vue全局配置.希望帮助我们去了解vue的全局配置,快速开发. Vue.config是vue的全局配置对象.包含Vue的所有全局属性: silent:boolean(默认值:false)--- ...
- 第三百八十一节,Django+Xadmin打造上线标准的在线教育平台—xadmin全局配置
第三百八十一节,Django+Xadmin打造上线标准的在线教育平台—xadmin全局配置 1.xadmin主题设置 要使用xadmin主题,需要在一个app下的adminx.py后台注册文件里,写一 ...
- Vue.js 源码分析(二) 基础篇 全局配置
Vue.config是一个对象,包含Vue的全局配置,可以在启动应用之前修改下列属性,如下: ptionMergeStrategies ;自定义合并策略的选项silent ...
- Django(九) xadmin全局配置
xadmin的使用,首先需要对model进行注册,才能在后台管理中进行操作. 1.在app里创建py文件:adminx(必须这个名称) 2.导入xadmin和models里的类,格式如下: 其中lis ...
- 微信小程序-全局配置、组件、页面跳转、用户信息等
全局配置 三个页面 app.json pages字段 "pages":[ "pages/index/index", # 首页 "pages/home/ ...
随机推荐
- 设计模式之单例模式(C#)
本文来自于本人个人微信公众号,欢迎关注本人微信公众号,二维码附在文章末尾~~~ 一直都特别羡慕能写文章的人,但是由于本人比较懒再加上写文章功底实在是just so so,所以就一搁再搁,最近突然觉得自 ...
- Redux 入门教程(三):React-Redux 的用法
为了方便使用,Redux 的作者封装了一个 React 专用的库 React-Redux,本文主要介绍它. 这个库是可以选用的.实际项目中,你应该权衡一下,是直接使用 Redux,还是使用 React ...
- Median String CodeForces - 1144E
You are given two strings ss and tt, both consisting of exactly kk lowercase Latin letters, ss is le ...
- js变量以及其作用域
一.变量的类型 Javascript和Java.C这些语言不同,它是一种无类型.弱检测的语言.它对变量的定义并不需要声明变量类型,我们只要通过赋值的形式,可以将各种类型的数据赋值给同一个变量.例如: ...
- 网络七层模型及TCP、UDP,一次HTTP请求都发生了什么
一.七层网络模型 http协议运行在应用层 二.TCP-UDP TCP.UDP协议的区别 一次Http 请求,这个过程都发生了什么 TCP 协议如何保证可靠传输 HTTP和HTTPS的区别 TCP ...
- yield from
一.yield 关于yield详细可参考我这篇文章 下面是一个带yield的生成器: def gen_yield(): while True: recv = yield do something wi ...
- 物联网框架ServerSuperIO
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
- Jmeter之发送请求入参必须使用编码格式、Jmeter之发送Delete请求可能入参需要使用编码格式
这里的其中一个属性值必须要先编码再传参才可以,具体可以通过抓包分析观察:
- spring boot中的约定优于配置
Spring Boot并不是一个全新的框架,而是将已有的Spring组件整合起来. Spring Boot可以说是遵循约定优于配置这个理念产生的.它的特点是简单.快速和便捷. 既然遵循约定优于配置,则 ...
- 同一个机器 安装多个版本Chrome浏览器的方法
1. Chrome 现在安装直接没有任何提示 就直接安装了 而且自动式 高版本覆盖低版本安装 不给你任何选择版本的机会. 2. 但是chrome 的安装是基于用户的 所以 同一个机器 使用不同的用户 ...