django xadmin 安装和使用
- 官方文档: http://xadmin.readthedocs.io/en/docs-chinese/
版本:django1.9
pip安装部署
pip install xadmin
- settings.py配置
INSTALLED_APPS中增加2个app:xadmin、crispy_forms
INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','xadmin','crispy_forms', ]
- urls.py配置,xadmin替换admin
from django.conf.urls import url from django.contrib import admin import xadminurlpatterns = [# url(r'^admin/', admin.site.urls),url(r'^xadmin/', xadmin.site.urls), ]
- 数据库同步
makemigrations migrate
- 访问首页
源码安装部署
下载:https://github.com/sshwsfc/xadmin
解压xadmin-master.zip文件
将xadmin-master文件中xadmin目录复制到自己的django项目下
xadmin注册
已在models创建表EmailVerifyRecord
class EmailVerifyRecord(models.Model):email_choices = (('register', u'注册'),('forget', u'找回密码'),)code = models.CharField(max_length=20, verbose_name=u'验证码')email = models.EmailField(max_length=50, verbose_name=u'邮箱')send_type = models.CharField(choices=email_choices, max_length=10, verbose_name=u'验证码类型')send_time = models.DateTimeField(default=datetime.now, verbose_name=u'发送时间')
在创建的app下创建adminx.py文件
import xadmin from .models import EmailVerifyRecordclass EmailVerifyRecordAdmin(object):list_display = ['code', 'email', 'send_type', 'send_time']search_fields = ['code', 'email', 'send_type']list_filter = ['code', 'email', 'send_type', 'send_time']xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin)
主题应用
adminx.py文件增加
from xadmin import viewsclass BaseSetting(object):enable_themes = Trueuse_bootswatch = Truexadmin.site.register(views.BaseAdminView, BaseSetting)
全局应用
- 页头和页尾自定义
adminx.py文件增加
from xadmin import viewsclass GlobalSetting(object):site_title = "shhnwangjian后台管理系统"site_footer = "http://www.cnblogs.com/shhnwangjian/"xadmin.site.register(views.CommAdminView, GlobalSetting)
- 左侧app中文名称定义和多表紧缩
修改前
修改后
adminx.py文件增加
from xadmin import viewsclass GlobalSetting(object):site_title = "shhnwangjian后台管理系统"site_footer = "http://www.cnblogs.com/shhnwangjian/"menu_style = "accordion"xadmin.site.register(views.CommAdminView, GlobalSetting)
apps.py文件
# -*- coding: utf-8 -*- from django.apps import AppConfigclass UsersConfig(AppConfig):name = 'users'verbose_name = u'用户信息'
__init__.py文件
default_app_config = "users.apps.UsersConfig"
font awesome自定义
官网下载:http://fontawesome.io/
下载后覆盖css、fonts目录
在adminx.py文件中引入model_icon
class EmailVerifyRecordAdmin(object):list_display = ['code', 'email', 'send_type', 'send_time']search_fields = ['code', 'email', 'send_type']list_filter = ['code', 'email', 'send_type', 'send_time']model_icon = 'fa fa-address-book-o'xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin)
model_icon这个值,在http://fontawesome.io/icons/ 中选中的图标或class内容,如下图
引用自定义的用户信息
如上图目录中xadmin源码中加入下面内容
from django.contrib.auth import get_user_model User = get_user_model()
修改密码,需要更改源码
actions制作案例
adminx.py文件内容
from django.core.exceptions import PermissionDenied from xadmin.views.base import filter_hook from xadmin.util import model_format_dict, model_ngettextclass zabbixitmes_display_off_action(BaseActionView):action_name = "zabbixitmes_display_off_action"description = u'%(verbose_name_plural)s 展示和采集关闭'model_perm = 'change'@filter_hookdef change_models(self, queryset):n = queryset.count()if n:self.log('change', (u' %(count)d %(items)s. 展示和采集关闭')% {"count": n, "items": model_ngettext(self.opts, n)})for obj in queryset:obj.display_insert = 0obj.save()def do_action(self, queryset):if not self.has_change_permission():raise PermissionDeniedif self.request.POST:self.change_models(queryset)return None
提示:可以参考BaseActionView中的删除DeleteSelectedAction,可以实现xadmin自带的日志记录。用于审计操作者的操作内容。
转载于:https://www.cnblogs.com/shhnwangjian/p/6372503.html
django xadmin 安装和使用相关推荐
- Django+xadmin 打造线上教育平台(二)-1(旧)
Django+xadmin 打造线上教育平台 一.完成用户注册和登录功能 1-1.完成首页页面,访问:http://127.0.0.1:8000/index/ 1)html页面代码: <!DO ...
- 通过一文学会搭建Django+Xadmin后台管理系统
由于项目要快速搭建后台管理系统,想想知道的有Django admin还有Java的Guns,可是Guns并不熟悉,没时间慢慢学,于是使用Django+Xadmin搭建,下面记录详细的过程,请确保你的系 ...
- Django+xadmin 打造线上教育平台(二)登录-注册(重制)
Django+xadmin 打造线上教育平台(二) 一.首页 1)views.py/index函数: def index(request):"""首页"&quo ...
- django+xadmin在线教育平台慕学网(二)
三.xadmin后台管理 3.1 .xadmin的安装 github下在xadmin源码:下载地址 下载完成之后,解压复制xadmin文件夹 3.2.xadmin配置 (1)新建python pack ...
- 第三百九十二节,Django+Xadmin打造上线标准的在线教育平台—sql注入攻击,xss攻击,csrf攻击...
第三百九十二节,Django+Xadmin打造上线标准的在线教育平台-sql注入攻击,xss攻击,csrf攻击 sql注入攻击 也就是黑客通过表单提交的地方,在表单里输入了sql语句,就是通过SQL语 ...
- 怎么检查python是否安装成功-检查python以及django是否安装配置成功
首先说明下,我使用pycharm作为开发的IDE,在第一次创建django项目的时候,会自动安装django包的.(网上也有很多单独安装的方法),环境变量配置成功后,就是用下面的方法检测安装成功与否. ...
- 第三百七十七节,Django+Xadmin打造上线标准的在线教育平台—apps目录建立,以及数据表生成...
第三百七十七节,Django+Xadmin打造上线标准的在线教育平台-apps目录建立,以及数据表生成 apps目录建立 我们创建一个apps目录,将所有的app放到apps目录里去,这样方便管理,也 ...
- 第三百八十九节,Django+Xadmin打造上线标准的在线教育平台—列表筛选结合分页...
第三百八十九节,Django+Xadmin打造上线标准的在线教育平台-列表筛选结合分页 根据用户的筛选条件来结合分页 实现原理就是,当用户点击一个筛选条件时,通过get请求方式传参将筛选的id或者值, ...
- Django如何安装指定版本
Django默认安装最新版本:pip install django Django后面接版本号就可以了:pip install django==1.11.7 如果使用pip install安装库比较慢, ...
- 浅谈web开发以及django的安装和入门
浅谈web开发 1.B/S和C/S结构 B/S:浏览器与服务器进行的交互模式(不需要官方下载的,一夫多妻制) C/S:客户机与服务器进项的交互模式(必须官方下载的,一夫一妻制 2.MVC和MVT MV ...
最新文章
- Matlab与线性代数 -- 矩阵的范数
- Access update的时候传递参数的顺序
- 初学者如何选择合适的机器学习算法(附算法速查表)
- nginx 开启gzip压缩--字符串压缩比率很牛叉
- redis+mybatis+spring
- python入门指南-python3.6.0入门指南(官方版).pdf
- 对instance进行二次封装
- as常用固定搭配_人民日报整理:英语常用介词固定搭配,太实用了!
- 我的世界进服务器显示检查版本时间,我的世界怎么查看服务器种子_minecraft种子查看器...
- 删除bootcamp后扩充Mac分区
- office2016安装失败,或者需要卸载,如何彻底卸载
- 妙用自定义注解,一行代码搞定大功能(文末赠书)
- Linux常见问题及解决方案
- OAuth2.0 里面的 state 参数是干什么的?
- 【CC2530的点对点无线通讯开发(包含BasicRf协议栈、双击、长按、呼吸灯、跑马灯)】
- ccf-csp 2013-2015题目总结
- 2022年高压电工考试题及高压电工作业考试题库
- PCB设计:过孔的设计规则
- 芯片|兆易创新逾7300万股限售股下周一上市流通 占总股本23%
- ARCHLine.XP集成了BIMcatalogs.net平台提供的素材库
热门文章
- curl的php多线程类,php利用curl实现多线程类的示例
- js文件里获取路由 vue_纯js文件中,怎么使用vue的路由
- python课程典范选优_python 实现选课系统
- java radix sort_Java RadixSort
- linux函数入参个数限制,PowerShell函数中限制数组参数个数的例子
- oracle怎样停止到数据,oracle启动和停止
- node.js 微信小程序 部署服务器_微信小程序云开发如何上手
- 自动驾驶 8-0: 状态估计的重要 The Importance of State Estimation
- 【易实战】Spring Cloud Greenwich版本发布
- 171.Excel表列序号