作为一种观点,我可以生成一个CSV文件并将其返回给浏览器进行下载。由于CSV文件不支持多个工作表,我想生成几个CSV文件并将其打包为可下载的zip文件。
以下是CSV文件视图:
def user_csv_pull(request):
response = HttpResponse(mimetype='text/csv')
response['Content-Disposition'] = 'attachment; filename=user_list.csv'
user_list = User.objects.order_by('-date_joined')
t = loader.get_template('reporting/user_list.csv')
c = Context({'user_list': user_list,})
response.write(t.render(c))
return response
我需要扩展它,以支持我想要生成的4或5个其他csv文件,但假设我已经弄明白了...如何将其推入拉链?我是否需要将CSV文件写入磁盘然后压缩它们?我在这里发布了其他使用SockIO
的问题,这似乎是我可以在这里使用的。