django excel 导出页面_django导出数据生成excel并下载到本地

功能分析:

1、生成excel文件;

2、将生成的excel文件下载到本地;

utils.py文件中完成excel文件的数据写入,及生成表格样式设置

import xlwt,datetime

from xlwt import *

# 写入excel文件函数

def wite_to_excel(n,head_data,records,download_url):

#获取时间戳

timestr = datetime.datetime.now().strftime("%Y%m%d%H%M%S")

# 工作表

wbk = xlwt.Workbook()

sheet1 = wbk.add_sheet('sheet1',cell_overwrite_ok=True)

#写入表头

for filed in range(0,len(head_data)):

sheet1.write(0,filed,head_data[filed],excel_head_style())

#写入数据记录

for row in range(1,n+1):

for col in range(0,len(head_data)):

sheet1.write(row,col,records[row-1][col],excel_record_style())

#设置默认单元格宽度

sheet1.col(col).width = 256*15

wbk.save(download_url+'New-'+timestr+'.xls')

return timestr

# 定义导出文件表头格式

def excel_head_style():

# 创建一个样式

style = XFStyle()

#设置背景色

pattern = Pattern()

pattern.pattern = Pattern.SOLID_PATTERN

pattern.pattern_fore_colour = Style.colour_map['light_green'] # 设置单元格背景色

style.pattern = pattern

# 设置字体

font0 = xlwt.Font()

font0.name = u'微软雅黑'

font0.bold = True

font0.colour_index = 0

font0.height = 240

style.font = font0

#设置文字位置

alignment = xlwt.Alignment() # 设置字体在单元格的位置

alignment.horz = xlwt.Alignment.HORZ_CENTER # 水平方向

alignment.vert = xlwt.Alignment.VERT_CENTER # 竖直方向

style.alignment = alignment

# 设置边框

borders = xlwt.Borders() # Create borders

borders.left = xlwt.Borders.THIN # 添加边框-虚线边框

borders.right = xl

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值