django使用xlwt导出excel文件
这里只是mark一下导出的方法,并没有做什么REST处理和异常处理。
维护统一的style样式,可以使导出的数据更加美观。
def export_excel(request):
# 设置HttpResponse的类型
response = HttpResponse(content_type='application/vnd.ms-excel')
response['Content-Disposition'] = 'attachment;filename=user.xls'
# new一个文件
wb = xlwt.Workbook(encoding = 'utf-8')
# new一个sheet
sheet = wb.add_sheet(u'人员表单')
# 维护一些样式, style_heading, style_body, style_red, style_green
style_heading = xlwt.easyxf("""
font:
name Arial,
colour_index white,
bold on,
height 0xA0;
align:
wrap off,
vert center,
horiz center;
pattern:
pattern solid,
fore-colour 0x19;
borders:
left THIN,
right THIN,
top THIN,
bottom THIN;
"""
)
style_body = xlwt.easyxf("""
font:
name Arial,
bold off,
height 0XA0;
align:
wrap on,
vert center,
horiz left;
borders:
left THIN,
right THIN,
top THIN,
bottom THIN;
"""
)
style_green = xlwt.easyxf(" pattern: pattern solid,fore-colour 0x11;")
style_red = xlwt.easyxf(" pattern: pattern solid,fore-colour 0x0A;")
fmts = [
'M/D/YY',
'D-MMM-YY',
'D-MMM',
'MMM-YY',
'h:mm AM/PM',
'h:mm:ss AM/PM',
'h:mm',
'h:mm:ss',
'M/D/YY h:mm',
'mm:ss',
'[h]:mm:ss',
'mm:ss.0',
]
style_body.num_format_str = fmts[0] # 写标题栏
sheet.write(0,0, '姓名', style_heading)
sheet.write(0,1, '英文名', style_heading)
sheet.write(0,2, '职位', style_heading)
sheet.write(0,3, '公司电话', style_heading)
sheet.write(0,4, '手机', style_heading)
sheet.write(0,5, 'QQ', style_heading)
sheet.write(0,6, 'MSN', style_heading)
sheet.write(0,7, 'Email', style_heading)
sheet.write(0,8, '办公地点', style_heading)
sheet.write(0,9, '部门', style_heading)
sheet.write(0,10, '人员状态', style_heading) # 写数据
row = 1
for usa in employesInfo.objects.all():
sheet.write(row,0, usa.name, style_body)
sheet.write(row,1, usa.eName, style_body)
sheet.write(row,2, usa.postion, style_body)
sheet.write(row,3, usa.cPhone, style_body)
sheet.write(row,4, usa.pPhone, style_body)
sheet.write(row,5, usa.qq, style_body)
sheet.write(row,6, usa.msn, style_body)
sheet.write(row,7, usa.email, style_body)
sheet.write(row,8, usa.offAreas, style_body)
sheet.write(row,9, usa.depart, style_body)
if int(usa.status) == 1:
sheet.write(row,10, '在职',style_green)
else:
sheet.write(row,10,'离职', style_red)
row=row + 1 # 写出到IO
output = StringIO.StringIO()
wb.save(output)
# 重新定位到开始
output.seek(0)
response.write(output.getvalue())
return response
django使用xlwt导出excel文件的更多相关文章
- ExtJS Grid导出excel文件
ExtJS Grid导出excel文件, 需下载POI:链接:http://pan.baidu.com/s/1i3lkPhF 密码:rqbg 1.将Grid表格数据连同表格列名传到后台 2.后台导出e ...
- PHP从数据库导出EXCEL文件
参考博客链接:http://www.cnblogs.com/huangcong/p/3687665.html 我的程序代码 原生导出Excel文件 <?phpheader('Content-ty ...
- 使用Python xlwt写excel文件
如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...
- jxl导出Excel文件
一.java项目实现读取Excel文件和导出Excel文件 实现读取和导出Excel文件的代码: package servlet; import java.io.FileInputStream; im ...
- PHP导出excel文件
现在教教你如何导入excel文件: 在我的文件储存里面有一个com文件夹的,将其解压放在ThinkPHP/Library/文件夹里面,然后就是写控制器啦!去调用这个插件: <?php names ...
- 【转】 (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- PHPExcel导出excel文件
今天园子刚开,先来个货顶下,后续园丁qing我会再慢慢种园子的,希望大家多来园子逛逛. PHPExcel导出excel文件,先说下重要的参数要记住的东西 impUser() 导入方法 exportEx ...
- 导出Excel文件
/// <summary> /// 类说明:Assistant /// 更新网站:[url=http://www.sufeinet.com/thread-655-1-1.html]http ...
- 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法
-----转载:http://blog.csdn.net/sgear/article/details/7663502 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格 ...
随机推荐
- Motion control encoder extrapolation
Flying Saw debug Part1 Encoder extrapolation Machine introduction A tube cutting saw, is working for ...
- Springboot与Thymeleaf模板引擎整合基础教程(附源码)
前言 由于在开发My Blog项目时使用了大量的技术整合,针对于部分框架的使用和整合的流程没有做详细的介绍和记录,导致有些朋友用起来有些吃力,因此打算在接下来的时间里做一些基础整合的介绍,当然,可能也 ...
- 使用JavaScript循环嵌套解决各种图形
[循环嵌套的规律] 1.外层循环控制行数,内层循环控制每行中元素的个数. [图形题思路] 1.确定图形有几行,行数即为外层循环次数: 2.确定每行中有几种元素组成,有几种元素表示有几 ...
- python re group()
python group() 正则表达式中,group()用来提出分组截获的字符串,()用来分组 import re a = "123abc456" print re.search ...
- 【Beta】阶段 第二次Daily Scrum Meeting
每日任务 1.本次会议为第二次 Meeting会议: 2.本次会议在周二上午9:40,课间休息时间在禹州楼召开,召开本次会议为10分钟. 一.今日站立式会议照片 二.每个人的工作 (有work ite ...
- 个人作业1——四则运算题目生成程序(基于java)
项目代码: https://git.coding.net/YJh_/11.git 题目要求: 除了整数以外,还要支持真分数的四则运算,真分数的运算,例如:/ + / = / 运算符为 +, −, ×, ...
- 201521123004 《Java程序设计》第3周学习总结
1. 本周学习总结 (1)①使用构造函数(constructor) eg:Date now = new Date(); new Date(); //创建了一个Date对象 now是Date类型变量,存 ...
- 201521123052 《Java程序设计》 第14周学习总结
1. 本周学习总结 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现自己的学号.姓名) 在自己建立的数据库上执行常见SQL语句(截图) - ...
- MySql数据库第一天
LAMP linux apache mysql php的关系服务器软件 “服务器” 数据库 操作 mysql常用数据类型:int varchar float double bit datetime. ...
- ios开发——实用技术篇&三维旋转动画
实现三位旋转动画的方法有很多种,这里介绍三种 一:UIView 1 [UIView animateWithDuration:1.0 animations:^{ 2 self.iconView.laye ...