与django + unicodecsv的空白响应

时间:2015-08-04 16:05:37

标签: python django csv

我只是想让Django导出一个Model对象的csv。我已经尝试了很多不同的东西,并将我的代码减少到以下示例仍然不起作用。

我已经消除了构建文件的所有逻辑,关闭了所有上下文处理器(认为它们可能会以某种方式干扰),并调整我的模型以确保所有字段都是unicode(这在代码示例中甚至不重要) )。

我为常规csv更改了unicodecsv并且仍然有相同的问题所以我假设问题是在Django内部而不是视图。

预期输出是带有标题行的csv文件。实际输出是一个完全空的文件。

views.py:

def export_list_to_csv(request):
    response = HttpResponse(content_type='text/csv',)
    response['Content-Type'] = 'application/x-download';
    response['Content-Disposition'] = 'attachment; filename="my_product_list.csv"'

    writer = unicodecsv.writer(response)

    headers = ["name", "description", "website", "price", "creation_date"]

    writer.writerow(headers)

    return response

1 个答案:

答案 0 :(得分:0)

错误是Werkzeug使用的“runserver_plus”,无论出于何种原因,都不支持构建这样的响应。这个函数适用于常规的“runserver”或gunicorn。

相关问题