使用django以CSV格式发送文件附件路径问题

时间:2013-12-05 10:17:09

标签: python django csv django-errors

我已经在我当前的Python Django项目中实现了csv。

writer = csv.writer(open('custom_data/abc.csv', 'w+'))
            print "abc"
            headers = []
            for i in data_desc:

                headers.append((i[0].replace('_', ' ')).upper())
                j = j+1          

            j=1
            writer.writerow(headers)
            """
                fill data into csv cells
            """
            for value in data.fetchall():
                k=0
                no_record_check=1

                row = []
                for val in value:

                    row.append(val)

                    k = k+1       
                j=j+1
                writer.writerow(row)
        except:
            print "Exception here after printing"              

            #pass                    

        response = HttpResponse(mimetype='text/csv')
        now = datetime.datetime.now().strftime('%m-%d-%Y_%H:%M:%S')
        response['Content-Disposition'] = 'attachment; filename= custom_data/abc.csv'

代码工作正常。和名称为abc.csv的文件已成功创建。但下载选项的名称错误。

我在 custom_report 下创建了名称为 abc.csv 的文件,custom_report文件夹位于我的项目文件夹中。 (例如projectname / custom_report / abc.csv)。我在这个位置找到了文件。 ::

我的项目结构是:

                      projectname / app / app_name/ forms.py, views.py...

                      projetname / custom_report /abc.csv 

**我的问题:**

文件附带新名称custom_data_abc.csv。与空白数据。而custom_report下的abc.csv文件可以提供正确的数据。

你可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

试试这个:

抱歉错误回复。教程说:

response = HttpResponse(mimetype='text/csv')
response['Content-Disposition'] = 'attachment; filename=unruly.csv'
writer = csv.writer(response)

首先创建一个响应,然后编写内容