django使用xlwt导出excel文件实例代码
时间:2019-04-13
本文章向大家介绍django使用xlwt导出excel文件实例代码,主要包括django使用xlwt导出excel文件实例代码使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文研究的主要是记录一下下导出的方法,并没有做什么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文件实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
- 损失函数详解
- 排查Java的内存问题
- 使用两种方法让 ASP.NET Core 实现遵循 HATEOAS 结构的 RESTful API
- 设计模式六大原则(5):迪米特法则
- Selenium2+python自动化61-Chrome浏览器(chromedriver)
- 区块链可以减少社会不平等吗?
- 【干货】不止准确率:为分类任务选择正确的机器学习度量指标(附代码实现)
- python爬虫beautifulsoup4系列1
- 区块链入门教程
- python爬虫beautifulsoup4系列2
- python爬虫beautifulsoup4系列3
- 多元回归模型
- C++ STL之min_element()与max_element()(取容器中的最大最小值)
- RESTful API 设计最佳实践
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flutter 系统是如何实现ExpansionPanelList的示例代码
- Flutter中如何使用WillPopScope的示例代码
- Android实现音乐播放进度条传递信息的两种方式(在service和activity中)
- Flutter 中 Dart的Mixin示例详解
- Android Studio 实现九宫格功能
- Android user版通过adb_enable开启adb 调试 不提示对话框的流程分析
- Android实现圆线按钮进度效果
- Flutter 透明状态栏及字体颜色的设置方法
- Android实现带有进度条的按钮效果
- Android 自定义View实现多节点进度条功能
- android studio无法添加 bmob sdk依赖问题及解决方法
- Android自定义ToolBar并实现沉浸式的方法
- python初学者笔记—入门基础知识
- Android SurfaceView画板操作
- Android利用Andserver搭建服务器的详细教程