django后台admin csv 格式表格导出
1.在app下新建一个.py文件 此例commen.py
commen.py (内容)(具体怎么导出的也不知道这么写就对了)
import csv from django.http import HttpResponse def export_as_csv_action(description='Export selected objects as csv file',
fields=None,exclude=None,header=True):
def export_as_csv(modeladmin,request,queryset):
opts=modeladmin.model._meta
if not fields:
field_names=[field for field in opts]
else:
field_names=fields response = HttpResponse( content_type = 'text/csv')
response['Content-Disposition']='attachment;filename={}.csv'.format(opts.verbose_name.encode('utf-8'))
writer = csv.writer(response)
if header:
writer.writerow(field_names)
for obj in queryset:
# 正常的这样处理就行了
row = [getattr(obj,field)()if callable(getattr(obj,field))else getattr(obj,field) for field in field_names] # 如果新添处理功能比如处理下时间的显示格式
# row=[]
# forfieldinfield_names:
# value=getattr(obj,field)
# ifisinstance(value,datetime.datetime):
# value=value.'WW^sY')
# row.append(value) writer.writerow(row)
return response
export_as_csv.short_description = description
return export_as_csv 2.在app下的admin.py
(1)导入刚才封装的函数
from .commen import export_as_csv_action (2)如下操作
@admin.register(ECS)
class BlogAdmin(admin.ModelAdmin):
list_display=( 'name','type','outer_net', 'inner_mesh', 'configure','strip_width','account_number','password','group','aliyun','expire_date','state')
list_per_page = 30
actions=[export_as_csv_action("导出Execl",fields=['name','type','outer_net', 'inner_mesh', 'configure','strip_width','account_number','password','group','aliyun','expire_date','state'])] search_fields =('name','type','outer_net', 'inner_mesh', 'configure','strip_width','account_number','password','group','aliyun','expire_date')
date_hierarchy = "expire_date"
django后台admin csv 格式表格导出的更多相关文章
- thinkphp5 csv格式导入导出(多数据处理)
关于csv文件格式的导出导入个人见解 先上代码: <?php namespace think; class Csv { /** * 导出csv文件 * @param $list 数据源 * @p ...
- 修改django 后台admin用户的密码
python manage.py shellfrom django.contrib.auth.models import User from django.contrib.auth.models im ...
- django后台admin管理布局
在model模块里设置 class pc_info(models.Model): ip = models.CharField(max_length=64) sn = models.CharField( ...
- Django - 后台admin不显示带auto_now, auto_now_add选项的字段
https://stackoverflow.com/questions/6386172/datetimefield-doesnt-show-in-admin-system 解决办法 class Rat ...
- django后台admin页面表单自定义
自定义一个form 表单来替换admin默认的表单 在自定义表单中可以定义字段和验证 https://docs.djangoproject.com/zh-hans/3.2/ref/contrib/ad ...
- Django Admin 后台Admin继承UserAdmin增加用户密码不显示明文和用户登录不了的解决方法
Django后台Admin继承UserAdmin增加用户不显示明文方法 1.在 models.py 中用户表 # 导包规范-1.Python标准模块 from django.db import mod ...
- 支持10种格式的 HTML 表格导出 jQuery 插件
HTML 表格导出 jQuery 插件可以帮助用户导出 HTML 表格到 JSON.XML.PNG.CSV.TXT.SQL.MS-Word.MS-Excel.MS-PowerPoint 和 PDF 格 ...
- mongodb导出数据csv格式
mongoexport -d test -c item --type=csv -f salary,city,workYear,companyShortName -o user.csvmongoexpo ...
- asp.net导出excel-一行代码实现excel、xml、pdf、word、html、csv等7种格式文件导出功能而且美观-SNF快速开发平台
分享: 腾讯微博 新浪微博 搜狐微博 网易微博 腾讯朋友 百度贴吧 豆瓣 QQ好友 人人网 作者:王春天 原文地址:http://www.cnblogs.com/spring_ ...
随机推荐
- Axure RP 介绍
原型设计是将想法转变为设计过程中至关重要的一环.经常有设计师小伙伴可能会问到,“哪个原型设计工具是最好的呢”?实际上这是一种错误的提问方式,尤其是在当下原型工具种类繁多,针对不同需求各有优势的大环境中 ...
- BUAA-OO第二单元小结
一.设计策略 三次作业中,由于前两次作业都只有一部电梯,因此我的线程只有两个,一个等待队列输入进程,以及一个电梯运行进程.等待队列输入进程实现十分简单,只需要根据输入把request添加到等待队列即可 ...
- cordova闪屏插件插件使用:cordova-plugin-splashscreen
欢迎页本地插件,默认建议包含.启动本地应用时显示指定的图片(启动页) 1. 添加插件:cordova plugin add cordova-plugin-splashscreen 2. 调用方法:
- delphi 多线程之System.TMonitor (续一)
unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System ...
- GP中Geoprocessor.Execute(string name, IVariantArray parameters, ITrackCancel trackCancel)
在做一个项目的过程中,发现GP运算方法 Execute(string name, IVariantArray parameters, ITrackCancel trackCancel) 与Execut ...
- Ubuntu16.04下安装nginx+mysql+php+redis
一.redis简介 Redis是一个key-value存储系统.和Memcached类似,为了保证效率,数据都是缓存在内存中.区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记 ...
- 新安装mysql,如何提升mysql安全性
1.修改mysql默认端口,将3306修改为其他端口. 2.设定足够复杂的密码策略并指定访问IP(在user表中可以指定用户可访问的访问IP地址). 3.设定IP访问白名单. 4.设定root用户只能 ...
- ros的一些设置
端口映射规则,dst-address填写你的公网地址,乱写也可以,到后面会通过定时脚本自动更新 /ip firewall nat add action=dst-nat chain=dstnat com ...
- ThinkPHP3.2 中空方法、空控制器和空模块的设置
ThinkPHP3.2 中空方法.空控制器和空模块的设置 1.空方法设置 问题: 当你访问一个不存在的方法的时候: 如: http://localhost/test/index.php/Home/Us ...
- 图解python中赋值、浅拷贝、深拷贝的区别
Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果.下面本文就通过简单的例子介绍一下这些概念之间的差别. 对象赋值 直接看一段代码: will = ...