Django 创建CSV文件

Django使用Python内置的CSV库来创建动态的CSV(逗号分隔值)文件。我们可以在项目的视图文件中使用这个库。

让我们来看一个例子,这里我们有一个Django项目,我们正在实现这个功能。创建一个视图函数 getfile()

Django CSV例子

在这个例子中,我们使用静态数据创建CSV。

// Views.py

复制代码
import csv

def getfile(request):
    response = HttpResponse(content_type='text/csv')
    response['Content-Disposition'] = 'attachment; filename="file.csv"'
    writer = csv.writer(response)
    writer.writerow(['1001', 'John', 'Domil', 'CA'])
    writer.writerow(['1002', 'Amit', 'Mukharji', 'LA', '"Testing"'])
    return response

Python

Copy

// urls.py

为该函数提供URL。

复制代码
path('csv',views.getfile)

Python

Copy

在执行到浏览器时,它呈现一个CSV文件。参见示例。

除了静态数据,我们还可以从数据库获取CSV文件。请看下面的示例,我们通过使用 Employee 模型从表中获取数据。

使用数据库生成动态CSV文件

// views.py

复制代码
from myapp.models import Employee import csv
def getfile(request):
    response = HttpResponse(content_type='text/csv')
    response['Content-Disposition'] = 'attachment; filename="file.csv"'
    employees = Employee.objects.all()
    writer = csv.writer(response)
    for employee in employees:
        writer.writerow([employee.eid,employee.ename,employee.econtact])
    return response

Python

Copy

输出结果:

保存文件并在包含以下数据的文本编辑器中打开。

这些数据是从员工表中取回的,下面是表的快照。

嗯,我们已经看到这个库非常有用,可以创建动态的CSV文件。现在,在需要的时候将其应用到Django项目中

相关推荐
lihui_cbdd33 分钟前
HPC 集群上 OpenMM GPU 多版本安装实战指南
运维·服务器·人工智能·计算化学
Xpower 1741 分钟前
MCP 服务器暴露在公网:AI Agent 工具层正在变成新的安全边界
服务器·人工智能·安全
深圳市晶科鑫实业有限公司2 小时前
5G与AIoT时代:如何选择晶振常用频率?
服务器·单片机·物联网·5g·智能路由器·健康医疗·信息与通信
wanhengidc3 小时前
双线服务器有哪些优点?
运维·服务器
jscxy52063 小时前
ospf综合实验
运维·服务器·网络
KaMeidebaby4 小时前
卡梅德生物技术快报|酵母双杂交 cDNA 文库构建与蛋白互作筛选流程
服务器·前端·数据库·人工智能·算法
csdn_aspnet4 小时前
Modbus TCP C# 客户端程序
服务器·网络·tcp/ip·c#
沐风___4 小时前
App 上架之后:如何看数据、获取用户与持续迭代产品
服务器·前端·数据库
小灰灰搞电子4 小时前
Rust 实现异步ModbusTCP主机源码分享
服务器·网络·modbustcp·rust
apcipot_rain4 小时前
计科八股20260529——连接协议连接线程池、模块拆解模块通信、WebSocket
运维·服务器·网络·八股