def full_data_dump_csv(request, survey_slug): survey = Survey.objects.get(slug=survey_slug) response = _create_csv_response('full_dump_{0}.csv'.format( datetime.date.today().strftime('%d-%m-%Y'))) fields = OrderedDict(Respondant.get_field_names().items() + survey.generate_field_names().items()) writer = SlugCSVWriter(response, fields) writer.writeheader() for resp in survey.respondant_set.all(): writer.writerow(json.loads(resp.csv_row.json_data)) return response
def full_data_dump_csv(request, survey_slug): survey = Survey.objects.get(slug=survey_slug) response = _create_csv_response('full_dump_{0}.csv'.format( datetime.date.today().strftime('%d-%m-%Y'))) fields = OrderedDict(Respondant.get_field_names().items() + survey.generate_field_names().items()) writer = SlugCSVWriter(response, fields) writer.writeheader() for resp in survey.respondant_set.all(): writer.writerow(resp.generate_flat_dict()) return response
def full_data_dump_csv(request, survey_slug): survey = Survey.objects.get(slug=survey_slug) response = _create_csv_response("full_dump_{0}.csv".format(datetime.date.today().strftime("%d-%m-%Y"))) fields = OrderedDict(Respondant.get_field_names().items() + survey.generate_field_names().items()) writer = SlugCSVWriter(response, fields) writer.writeheader() for resp in survey.respondant_set.filter(complete=True): # very basic removal of some characters that were causing issue in writing rows # row_string = resp.csv_row.json_data.replace('\u2019', '\"') # row_string = row_string.replace('\u2026', '\"') row_ascii = resp.csv_row.json_data.encode("ascii", errors="ignore") writer.writerow(json.loads(row_ascii)) return response
def full_data_dump_csv(request, survey_slug): survey = Survey.objects.get(slug=survey_slug) response = _create_csv_response('full_dump_{0}.csv'.format( datetime.date.today().strftime('%d-%m-%Y'))) fields = OrderedDict(Respondant.get_field_names().items() + survey.generate_field_names().items()) writer = SlugCSVWriter(response, fields) writer.writeheader() for resp in survey.respondant_set.filter(complete=True): # very basic removal of some characters that were causing issue in writing rows # row_string = resp.csv_row.json_data.replace('\u2019', '\"') # row_string = row_string.replace('\u2026', '\"') row_ascii = resp.csv_row.json_data.encode('ascii', errors='ignore') writer.writerow(json.loads(row_ascii)) return response