25、Django-生成csv文件
python提供了内建库 - csv、可以直接通过改库操作csv文件 案例如下: 写入csv文件 import csv with open('eggs.csv', 'w', newline='') as csvfile: write = csv.writer(csvfile) write.writerow(['a', 'b', 'c'])
#csv文件下载 在网站中、实现下载csv、注意如下: - 响应Content-Type 类型需修改为 test/csv 这告诉浏览器该文件是csv文件、而不是HTML文件 - 响应会获得一个额外的Content-Disposition标头、其中包含csv文件的名称、他将被浏览器用于开启 '另存为...'对话框
views.py ----------------------------------------------------------------------------------------- from django.http import HttpResponse from django.shortcuts import render import csv # Create your views here. #访问http://127.0.0.1:8000/test_csv #自动下载test.csv文件 def test_csv(request): # 创建响应对象 、设置响应类型 response = HttpResponse(content_type='text/csv') # Content-Type、修改响应头 ##添加特殊的响应头、只要有这个响应头浏览器就会弹出下载 #attachment: 是告诉浏览器,这个文件要下载下来 #filename: 是告诉浏览器,文件名是什么 response['Content-Disposition'] = 'attachment; filename="test.csv"' all_data = ['a', 'b', 'c', 'd'] # 所有数据 # 创建csv写入对象 writer = csv.writer(response) writer.writerow(all_data) # 写入数据 return response ----------------------------------------------------------------------------------------------------- urls.py -------------------------------------------------------- from django.contrib import admin from django.urls import path from download_csv import views urlpatterns = [ path('admin/', admin.site.urls), path('test_csv/', views.test_csv) ] ------------------------------------------------------------
本文作者:little小新
本文链接:https://www.cnblogs.com/littlecc/p/18202979
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
标签:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步