python-小知识点总结

【导出】功能总结

import openpyxl
from utils.excel_utils import ExcelUtils
from openpyxl.writer.excel import save_virtual_workbook
from django.http import JsonResponse, HttpResponse

def cvt_pool_history_export(ls_obj):
    wb = openpyxl.Workbook()
    ws = wb.active
    ws.append(["调整日期", "简称"])
    for dic in ls_obj:
        ws.append((
            dic.get("created_time"),
            dic.get("simple_name"),
        ))
    ExcelUtils.format_excel(ws)
    ExcelUtils.simple_fmt_wh(ws)
    return save_virtual_workbook(wb)

def list(self, request, *args, **kwargs):
    queryset = self.filter_queryset(self.get_queryset())
    serializer = self.get_serializer(queryset, many=True)
    buffer = cvt_pool_history_export(serializer.data)
    response = HttpResponse(
        buffer, content_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
    )
    response["Content-Disposition"] = "attachment; filename=XX导出.xlsx"
    return response
上一篇:使用QuerySet删除和查询单表


下一篇:django——django_filters 使用与剖析