zoukankan      html  css  js  c++  java
  • [django]利用xlwt实现文件下载功能

    代码:

    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>

    实现该功能主要注意两个方面:

    1,在view.py中下面两行代码必须加入进去,

    response = HttpResponse(content_type='application/vnd.ms-excel') #这里响应对象获得了一个特殊的mime类型,告诉浏览器这是个exell文件不是html
    
    response['Content-Disposition'] = 'attachment; filename=DEMO.xls' #这里响应对象获得了附加的Content-Disposition协议头,它含有excel文件的名称,文件名随意,当浏览器访问它时,会以"另存为"对话框中使用它.

     2,注意xlwt的使用方法,下章将详细讲解xlwt的使用方法!

  • 相关阅读:
    第十次作业
    第九次作业总结
    第九次作业
    第八次作业总结
    第七次作业总结
    第六次总结
    第十二次作业总结
    第十一次作业总结
    第十次作业总结
    第九次作业总结
  • 原文地址:https://www.cnblogs.com/CQ-LQJ/p/5333041.html
Copyright © 2011-2022 走看看