Как я возвращаю CSV из приложения Опор?

Спасибо за вопрос, касающийся функции стенограммы. Мы слышали сообщения о том, что некоторые пользователи испытывают проблемы с загрузкой стенограммы в периоды, когда мы получаем большое количество сообщений. Помимо более поздней проверки, успешным обходным путем является изменение выбора даты в пользовательском фильтре даты. Конкретно заканчивая диапазон дат за день или два до текущей даты. Приносим извинения за доставленные неудобства.

11
задан Eric the Red 26 April 2009 в 00:36
поделиться

3 ответа

Чтобы сообщить браузеру тип контента, который вы ему предоставляете, вам нужно установить заголовок Content-type на 'text / csv'. В вашей функции Pylons следующее должно выполнять эту работу:

response.headers ['Content-type'] = 'text / csv'

12
ответ дан 3 December 2019 в 03:05
поделиться

PAG верна, но, кроме того, если вы хотите предложить имя для загруженного файла, вы также можете установить response.headers ['Content-disposition'] = 'attachment; filename = offer.csv '

9
ответ дан 3 December 2019 в 03:05
поделиться

Да, для этого можно использовать модуль csv:

import csv
from cStringIO import StringIO

...

def results_csv(self):
    response.headers['Content-Type'] = 'text/csv'
    s = StringIO()
    writer = csv.writer(s)
    writer.writerow(['header', 'header', 'header'])
    writer.writerow([123, 456, 789])
    return s.getvalue()
8
ответ дан 3 December 2019 в 03:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: