django xadmin 安装和使用
版本: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 xadmin urlpatterns = [
# 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 EmailVerifyRecord 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'] xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin)
主题应用

adminx.py文件增加
from xadmin import views class BaseSetting(object):
enable_themes = True
use_bootswatch = True xadmin.site.register(views.BaseAdminView, BaseSetting)
全局应用
- 页头和页尾自定义

adminx.py文件增加
from xadmin import views class GlobalSetting(object):
site_title = "shhnwangjian后台管理系统"
site_footer = "http://www.cnblogs.com/shhnwangjian/" xadmin.site.register(views.CommAdminView, GlobalSetting)
- 左侧app中文名称定义和多表紧缩
修改前

修改后

adminx.py文件增加
from xadmin import views class 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 AppConfig class UsersConfig(AppConfig):
name = 'users'
verbose_name = u'用户信息'
__init__.py文件
default_app_config = "users.apps.UsersConfig"
font awesome自定义
下载后覆盖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_ngettext class zabbixitmes_display_off_action(BaseActionView):
action_name = "zabbixitmes_display_off_action"
description = u'%(verbose_name_plural)s 展示和采集关闭'
model_perm = 'change' @filter_hook
def 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 = 0
obj.save() def do_action(self, queryset):
if not self.has_change_permission():
raise PermissionDenied
if self.request.POST:
self.change_models(queryset)
return None
提示:可以参考BaseActionView中的删除DeleteSelectedAction,可以实现xadmin自带的日志记录。用于审计操作者的操作内容。


django xadmin 安装和使用的更多相关文章
- django xadmin安装
安装方式一: 下载xadmin源码文件,下载之后,解压缩,将解压目录中的xadmin文件夹拷贝到项目项目文件中.下载地址:https://codeload.github.com/sshwsfc/xad ...
- 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本 uwsgi- ...
- 第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块
第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtuale ...
- 第四百节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装python3.5.1
第四百节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装python3.5.1 1.检查系统是否安装了python [root@192 ~]# rpm -qa ...
- 第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6
第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6 1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步 ...
- 第三百七十九节,Django+Xadmin打造上线标准的在线教育平台—xadmin的安装
第三百七十九节,Django+Xadmin打造上线标准的在线教育平台—xadmin的安装 xadmin介绍 xadmin是基于Django的admin开发的更完善的后台管理系统,页面基于Bootstr ...
- Django+xadmin打造在线教育平台(二)
三.xadmin后台管理 3.1.xadmin的安装 django2.0的安装(源码安装方式): https://github.com/sshwsfc/xadmin/tree/django2 把zip ...
- Django+xadmin打造在线教育平台(三)
五.完成注册.找回密码和激活验证码功能 5.1.用户注册 register.html拷贝到templates目录 (1)users/views.py class RegisterView(View): ...
- Django+xadmin打造在线教育平台(一)
目录 在线教育平台(一) 在线教育平台(二) 在线教育平台(三) 在线教育平台(四) 在线教育平台(五) 在线教育平台(六) 在线教育平台(七) 在线教育平台( ...
随机推荐
- python装饰器 练习
用类作为装饰器 练习一 最初代码 class bol(object): def __init__(self, func): self.func = func def __call__(self): r ...
- 微信小程序之自定义组件的应用
小程序支持自定义组件,下面是一个简单的购物车组件,实现的效果如图: 效果图 创建组件 在根目录创建components目录,然后创建计数组件 count 如图: 组件内容 <!--compone ...
- [COCI2017-2018#6] Alkemija
题意 一共有 \(n\) 种物质,已知开始你有 \(m\) 种物质且数量足够多,再给出 \(K\) 个物质的转化规则(一堆物质变成另一堆),问一共能够得到多少种物质. 分析 对 \(n\) 种物质和 ...
- Kaggle: Google Analytics Customer Revenue Prediction EDA
前言 内容提要 本文为Kaggle竞赛 Google Analytics Customer Revenue Prediction 的探索性分析 题目要求根据历史顾客访问GStore的数据,预测其中部分 ...
- DFA化简
首先是未化简DFA的转换表 NFA状态 DFA状态 a b {0,1,2,4,7} A B C {1,2,3,4,6,7,8} B B D {1,2,4,5,6,7} C B C {1,2,4,5,6 ...
- 微软职位内部推荐-Software Engineer
微软近期Open的职位: Job Title: Software Engineer Work Location: Suzhou, China This is a once in a lifetime ...
- mysql 查询所有子节点的相关数据
定义一个函数 ) CHARSET utf8 BEGIN ); ); SET sTemp = '$'; SET sTempChd =cast(rootId as CHAR); WHILE sTempCh ...
- ContentProvider示例
http://hi.baidu.com/pekdou/item/b2a070c37552af210831c678 首先,我自己是各初学者,网上一些关于ContentProvider的例子也不少,我自己 ...
- 基于SSH框架的网上书店系统开发的质量属性
基于SSH框架的网上书店系统开发的质量属性 对于我的基于SSH框架的网上书店系统的开发要实现的质量属性有可用性.可修改性.性能.安全性.易用性和可测试性. 1.对于可用性方面的战术: 可用性(Avai ...
- Objective-C runtime 机制
Runtime使用C语言结构体表示对象,用C语言函数表示方法,这些C语言函数和结构体被Runtime封装后,我们就可以在程序中执行创建,检查,修改类和对象和他们的方法 OC的Class其实是一个obj ...