Django-26 django生成csv文件 csv文件下载

Python提供了内建库 - csv;可直接通过该库操作csv文件
案例如下:

import csv
with open('eggs.csv','w',newline='') as csvfile:
  writer = csv.writer(csvfile)
  writer.writerow(['a','b','c'])

csv文件下载

在网站中,实现下载csv,注意如下:

  • 响应Content-Type类型需修改为text/csv。这告诉浏览器该文档是csv文件,而不是HTML文件
  • 响应会获得一个额外的Content-Disposition 标头,其中包含csv文件的名称。它将被浏览器用于开启“另存为...”对话框
import csv
from django.http import HttpResponse

def make_csv_view(request):
  response = HttpResponse(content_type='text/csv')
  response['Content-Disposition'] = 'attachment;filename="test.csv"'
  all_data = ['a','b','c','d']
  writer = csv.writer(response)
  writer.writerow(all_data)
  return response  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章