Вероятно, лучший способ - записать поток Pandas Excel в поток памяти, а затем обернуть его в ответ HTTP:
from pandas import ExcelWriter
XLSX_MIME = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
def some_excelfile_view(request):
response = HttpResponse(content_type=XLSX_MIME)
response['Content-Disposition'] = 'attachment; filename="PythonExport.xlsx"'
# obtain obj_master
# ...
writer = pd.ExcelWriter(<b>response</b>, engine='xlsxwriter')
df_view = obj_master.get_employee()
df_view.to_excel(writer, 'Sheet1')
writer.save()
return response
Тогда вы можете использовать url
, который сопоставляется с этим some_excelfile_view
. Если пользователь затем просматривает этот URL, он выполнит загрузку файла для файла Excel.