python3.X django服务导出execl文件,实现下载

# 导出Excel文件
def export_excel(request):
    city = request.POST.get('city')
    print(city)
    list_obj=place.objects.filter(city=city)
    # 设置HTTPResponse的类型
    response = HttpResponse(content_type='application/vnd.ms-excel')
    response['Content-Disposition'] = 'attachment;filename='+city+'.xls'
    """导出excel表"""
    if list_obj:
        # 创建工作簿
        ws = xlwt.Workbook(encoding='utf-8')
        # 添加第一页数据表
        w = ws.add_sheet('sheet1')  # 新建sheet(sheet的名称为"sheet1")
        # 写入表头
        w.write(0, 0, u'地名')
        w.write(0, 1, u'次数')
        w.write(0, 2, u'经度')
        w.write(0, 3, u'纬度')
        # 写入数据
        excel_row = 1
        for obj in list_obj:
            name = obj.place
            sum = obj.sum
            lng = obj.lng
            lat = obj.lat
            # 写入每一行对应的数据
            w.write(excel_row, 0, name)
            w.write(excel_row, 1, sum)
            w.write(excel_row, 2, lng)
            w.write(excel_row, 3, lat)
            excel_row += 1
        # 写出到IO
        output = BytesIO()
        ws.save(output)
        # 重新定位到开始
        output.seek(0)
        response.write(output.getvalue())
    return response

 

posted @ 2020-10-27 16:27  乔小生1221  阅读(463)  评论(1编辑  收藏  举报