python-小知識點總結
阿新 • • 發佈:2021-08-11
【匯出】功能總結
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