这里只是mark一下导出的方法,并没有做什么REST处理和异常处理。

维护统一的style样式,可以使导出的数据更加美观。

  1. def export_excel(request):
  2. # 设置HttpResponse的类型
  3. response = HttpResponse(content_type='application/vnd.ms-excel')
  4. response['Content-Disposition'] = 'attachment;filename=user.xls'
  5. # new一个文件
  6. wb = xlwt.Workbook(encoding = 'utf-8')
  7. # new一个sheet
  8. sheet = wb.add_sheet(u'人员表单')
  9. # 维护一些样式, style_heading, style_body, style_red, style_green
  10.    style_heading = xlwt.easyxf("""
  11. font:
  12. name Arial,
  13. colour_index white,
  14. bold on,
  15. height 0xA0;
  16. align:
  17. wrap off,
  18. vert center,
  19. horiz center;
  20. pattern:
  21. pattern solid,
  22. fore-colour 0x19;
  23. borders:
  24. left THIN,
  25. right THIN,
  26. top THIN,
  27. bottom THIN;
  28. """
  29. )
  30. style_body = xlwt.easyxf("""
  31. font:
  32. name Arial,
  33. bold off,
  34. height 0XA0;
  35. align:
  36. wrap on,
  37. vert center,
  38. horiz left;
  39. borders:
  40. left THIN,
  41. right THIN,
  42. top THIN,
  43. bottom THIN;
  44. """
  45. )
  46. style_green = xlwt.easyxf(" pattern: pattern solid,fore-colour 0x11;")
  47. style_red = xlwt.easyxf(" pattern: pattern solid,fore-colour 0x0A;")
  48. fmts = [
  49. 'M/D/YY',
  50. 'D-MMM-YY',
  51. 'D-MMM',
  52. 'MMM-YY',
  53. 'h:mm AM/PM',
  54. 'h:mm:ss AM/PM',
  55. 'h:mm',
  56. 'h:mm:ss',
  57. 'M/D/YY h:mm',
  58. 'mm:ss',
  59. '[h]:mm:ss',
  60. 'mm:ss.0',
  61. ]
  62. style_body.num_format_str = fmts[0]
  63.  
  64. # 写标题栏
  65. sheet.write(0,0, '姓名', style_heading)
  66. sheet.write(0,1, '英文名', style_heading)
  67. sheet.write(0,2, '职位', style_heading)
  68. sheet.write(0,3, '公司电话', style_heading)
  69. sheet.write(0,4, '手机', style_heading)
  70. sheet.write(0,5, 'QQ', style_heading)
  71. sheet.write(0,6, 'MSN', style_heading)
  72. sheet.write(0,7, 'Email', style_heading)
  73. sheet.write(0,8, '办公地点', style_heading)
  74. sheet.write(0,9, '部门', style_heading)
  75. sheet.write(0,10, '人员状态' style_heading)
  76.  
  77. # 写数据
  78. row = 1
  79. for usa in employesInfo.objects.all():
  80. sheet.write(row,0, usa.name, style_body)
  81. sheet.write(row,1, usa.eName, style_body)
  82. sheet.write(row,2, usa.postion, style_body)
  83. sheet.write(row,3, usa.cPhone, style_body)
  84. sheet.write(row,4, usa.pPhone, style_body)
  85. sheet.write(row,5, usa.qq, style_body)
  86. sheet.write(row,6, usa.msn, style_body)
  87. sheet.write(row,7, usa.email, style_body)
  88. sheet.write(row,8, usa.offAreas, style_body)
  89. sheet.write(row,9, usa.depart, style_body)
  90. if int(usa.status) == 1:
  91. sheet.write(row,10, '在职',style_green)
  92. else:
  93. sheet.write(row,10,'离职', style_red)
  94. row=row + 1
  95.  
  96. # 写出到IO
  97. output = StringIO.StringIO()
  98. wb.save(output)
  99. # 重新定位到开始
  100. output.seek(0)
  101. response.write(output.getvalue())
  102. return response

django使用xlwt导出excel文件的更多相关文章

  1. ExtJS Grid导出excel文件

    ExtJS Grid导出excel文件, 需下载POI:链接:http://pan.baidu.com/s/1i3lkPhF 密码:rqbg 1.将Grid表格数据连同表格列名传到后台 2.后台导出e ...

  2. PHP从数据库导出EXCEL文件

    参考博客链接:http://www.cnblogs.com/huangcong/p/3687665.html 我的程序代码 原生导出Excel文件 <?phpheader('Content-ty ...

  3. 使用Python xlwt写excel文件

    如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...

  4. jxl导出Excel文件

    一.java项目实现读取Excel文件和导出Excel文件 实现读取和导出Excel文件的代码: package servlet; import java.io.FileInputStream; im ...

  5. PHP导出excel文件

    现在教教你如何导入excel文件: 在我的文件储存里面有一个com文件夹的,将其解压放在ThinkPHP/Library/文件夹里面,然后就是写控制器啦!去调用这个插件: <?php names ...

  6. 【转】 (C#)利用Aspose.Cells组件导入导出excel文件

    Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...

  7. PHPExcel导出excel文件

    今天园子刚开,先来个货顶下,后续园丁qing我会再慢慢种园子的,希望大家多来园子逛逛. PHPExcel导出excel文件,先说下重要的参数要记住的东西 impUser() 导入方法 exportEx ...

  8. 导出Excel文件

    /// <summary> /// 类说明:Assistant /// 更新网站:[url=http://www.sufeinet.com/thread-655-1-1.html]http ...

  9. 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法

    -----转载:http://blog.csdn.net/sgear/article/details/7663502 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格 ...

随机推荐

  1. Day-11: IO编程

    由于CUP的运行速度远高于其他外设,IO操作有两种方式: 同步IO:CUP登着,程序暂停直到执行完后续代码 异步IO:CUP不等待,去做其他的事情,磁盘做完该做的事情后,告诉CUP,CUP再进行后续代 ...

  2. easyUI创建人员树

    最近做了一个树状的下拉列表,在这里记录一下,以后可以直接使用 项目中的树状下拉列表是用来选择人员用的,具体实现展示如下: 先说一说功能,左边的人员数是提供选人的,当点击中间的按钮,选中的人员会直接移到 ...

  3. my new day in CNblog

    感谢大家 今天正式在博客园平台开启我的第三个技术面博客 之前一直坚持在csdn平台撰文(http://blog.csdn.net/github_38885296)欢迎参观:) 因为觉得博客园知名度虽不 ...

  4. 团队作业——Alpha冲刺之事后诸葛亮

    小组成员: 武健男:201421123091 林俊鹏:201421123076 何跃斌:201421123082 陈鑫龙:201421123078 潘益靖:201421123086 黄睿:201421 ...

  5. 201521123052《Java程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 2. 书面作业 本次作业题集集合 1.List中指定元素的删除(题目4 ...

  6. 201521123024 《Java程序设计》第4周学习总结

    1. 本周学习总结 2. 书面作业 1.注释的应用 使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 2.面向对象设计(大作业1,非常重要) 2.1 将在网上商 ...

  7. JAVA课程设计个人博客 学生成绩管理 201521123014 黄绍桦

    1. 团队课程设计博客链接 http://www.cnblogs.com/kawajiang/p/7062407.html 2.个人负责模块或任务说明 本人主要负责DAO模式.添加和修改学生的信息功能 ...

  8. 注解【介绍、基本Annotation、元Anntation、自定义注解、注入基本信息、对象】

    什么是注解? 注解:Annotation-. 注解其实就是代码中的特殊标记,这些标记可以在编译.类加载.运行时被读取,并执行相对应的处理. 为什么我们需要用到注解? 传统的方式,我们是通过配置文件(x ...

  9. Unitty 3D 贪吃蛇 今日小记 -- 碰撞

    当蛇头碰撞到蛋的时候  应该让蛋消失并且重新创建蛋. void OnTriggerEnter    可以使用这个方法 下面附有这个方法的介绍 其次需要对挂载在之上的Object  check IsTr ...

  10. Cookie实现登录记住密码

    Cookie实现记住登录密码,用户可以自由选择是否记住密码,或者用户之前选择记住了,但是某一次又不想记住了,需要将之前对应的Cookie删除掉 Cookie相当于map 也是键值对的形式,但是并不相同 ...