【发布时间】:2011-05-03 14:55:35
【问题描述】:
在我的 view.py 中,我有两个函数,一个处理来自表单的输入并输出过滤列表,另一个应该将此列表导出为 CSV。
这是我的第一个函数的返回:
return render_to_response('templateX.html',
{
'queryset': queryset,
'filter_form': filter_form,
'validated': validated,
},
context_instance = RequestContext(request)
)
这里是导出函数:
def export_to_csv(request):
# get the response object, this can be used as a stream.
response = HttpResponse(mimetype='text/csv')
# force download.
response['Content-Disposition'] = 'attachment;filename=export.csv'
# the csv writer
writer = csv.writer(response)
qs = request.session['queryset']
for cdr in qs:
writer.writerow([cdr['calldate'], cdr['src'], cdr['dst'], ])
return response
我不确定如何从我的第一个函数中获取 queryset,其中包含我想要在我的 CSV 中的项目列表并在我的 export_to_csv 函数中使用它。 或者最好的方法是将这两个功能结合起来,让用户点击一个复选框,无论他/她是否想要下载 CSV 文件。 任何帮助将不胜感激。
【问题讨论】: