在编程不同的模块中,导出文件的方法也是各式各样的。提起xlrd,同时也会想到xlwt这个模块。如果是导出文件的操作,小编优先推荐使用xlwt,在读取excel方面也算比较出众。当然其他的一些同类库本期就不在过多讲了,想要了解的可以去以往的文章中看一看。今天我们就来看看Django中导出文件的方法吧。
代码:
url.py:
url(r'^importmould/$', 'keywork.views.xls_mould', name='xls_mould'),
view.py:
from django.http import HttpResponse import xlwt #xls写 def xls_mould(request): response = HttpResponse(content_type='application/vnd.ms-excel') response['Content-Disposition'] = 'attachment; filename=DEMO.xls' workbook = xlwt.Workbook(encoding='utf-8') #创建工作簿 sheet = workbook.add_sheet("sheet1") #创建工作页 row0 = [u'用户标识',u'设备状态',u'用户号码',u'用户姓名',u'账户编码', u'产品ID',u'支局名称',u'支局ID',u'区域名称',u'区域ID', u'网格名称',u'销售人员名称',u'销售点名称',u'号码竣工时间',u'号码拆机时间', u'用户类型',u'产品其他标识',u'服务提供ID',u'服务提供名称',u'CRM竣工时间', u'CRM受理员工',u'CRM受理工号',u'受理点',u'销售贫名称',u'统计时间' ] for i in range(0,len(row0)): sheet.write(0,i,row0[i]) workbook.save(response) return response
template模板文件:
<a href="{% url 'xls_mould' %}" class="btn btn-primary btn-sm" type="button">模板</a>
实现该功能主要注意:
在view.py中下面两行代码必须加入进去。
response = HttpResponse(content_type='application/vnd.ms-excel') #这里响应对象获得了一个特殊的mime类型,告诉浏览器这是个exell文件不是html response['Content-Disposition'] = 'attachment; filename=DEMO.xls' #这里响应对象获得了附加的Content-Disposition协议头,它含有excel文件的名称,文件名随意,当浏览器访问它时,会以"另存为"对话框中使用它.
以上就是Django中用xlwt导出文件的方法,其他导出方法小伙伴们也可以自己搜集资料,在excel里还有很多可以用python解决的事情,大家一起探索吧。更多Python学习推荐:PyThon学习网教学中心。