Внутри моего 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.
Любая помощь будет оценена.