In the following code, the second loop of "for row in csv_reader:" is
empty when dealing with an InMemoryUploadedFile object.  Setting
FILE_UPLOAD_MAX_MEMORY_SIZE equal to zero forces the use of a
TemporaryUploadedFile object and solves the problem.  It seems that
seek(0) doesn't work with an InMemoryUploadedFile and csv.reader.
Anyone know why?

    if request.method == 'POST':
        dedupe_csv_form = DedupeCSVForm(request.POST,request.FILES)
        if dedupe_csv_form.is_valid():
            relevant_column = dedupe_csv_form.cleaned_data
['duplicates_column']
            csv_file = request.FILES['csv_file']
            csv_reader = csv.reader(csv_file)

            items_in_relevant_column = []
            duplicates_in_relevant_column = []
            col = int(relevant_column)-1

            for row in csv_reader:
                items_in_relevant_column.append(row[col].strip())
            items_in_relevant_column.sort()

            for (i, item) in enumerate(items_in_relevant_column):
                if i == 0:
                    continue
                else:
                    last_item = items_in_relevant_column[i-1]
                if item == last_item:
                    duplicates_in_relevant_column.append(item)
            csv_file.seek(0)
            response = HttpResponse(mimetype='text/csv')
            response['Content-Disposition'] = 'attachment;
filename=output.csv'
            csv_writer = csv.writer(response)

            for row in csv_reader:
                item = row[col].strip()
                if item in duplicates_in_relevant_column:
                    continue
                else:
                    csv_writer.writerow(row)
            return response
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to