利用django admin实现数据批量导出
# 数据批量下载实现
def get_datas(self, request, queryset):
f = xlwt.Workbook()
sheet1 = f.add_sheet('单号', cell_overwrite_ok=True)
#Excel表的第一行
row0 = ['物流单号', '承运商', '快递单号', '公司', '国家', '收件人',
'地址', '电话', '品名', '重量', '货物价值']
for m in range(0, len(row0)):
sheet1.write(0, m, row0[m])
temp = []
for d in queryset:
t = [d.worldhao, d.carrier, d.danhao, d.kcompany, d.country, d.addressee, d.address, d.addphone,
d.Ename, d.weight, d.thingvalue]
#将数据保存在temp数组中
temp.append(t)
i = 1
for t in temp:
for j in range(len(t)):
#数据按行列一次导入到Excel表中
sheet1.write(i, j, t[j])
i = i + 1
#设置导出的位置
f.save('d://draftdata.xlsx')
# 设置提示信息
self.message_user(request, '下载成功!')
# 设置函数的显示名称
get_datas.short_description = '下载订单'
# 添加到‘动作’栏
actions = ['get_datas', 'pay_datas']
数据批量下载到Excel可参考这篇文章
Django实现数据库数据下载到Excel表