From 0c7fafa824308bfe5a142040a93e95edf5b9867c Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Thu, 9 Mar 2017 16:19:11 +0100 Subject: [PATCH] export to csv fixed (new line doesn't break csv) --- smash/web/models.py | 2 +- smash/web/views.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/smash/web/models.py b/smash/web/models.py index 3c853973..5b274604 100644 --- a/smash/web/models.py +++ b/smash/web/models.py @@ -587,7 +587,7 @@ class Appointment(models.Model): def title(self): if self.visit.subject.screening_number=="---": - return self.comment.replace("\n", ";") + return self.comment.replace("\n", ";").replace("\r", ";") else: title = self.visit.subject.first_name + " " + self.visit.subject.last_name + " type: " for type in self.appointment_types.all(): diff --git a/smash/web/views.py b/smash/web/views.py index 70e15841..0466b85a 100644 --- a/smash/web/views.py +++ b/smash/web/views.py @@ -663,7 +663,7 @@ def write_subjects_to_csv(writer): row = [] for field in subject_fields: row.append(getattr(subject,field.name)) - writer.writerow([unicode(s).encode("utf-8") for s in row]) + writer.writerow([unicode(s).replace("\n", ";").replace("\r", ";").encode("utf-8") for s in row]) def write_appointments_to_csv(writer): appointments_fields = [] @@ -695,7 +695,7 @@ def write_appointments_to_csv(writer): for type in appointment.appointment_types.all(): type_string+=type.code+"," row.append(type_string) - writer.writerow([unicode(s).encode("utf-8") for s in row]) + writer.writerow([unicode(s).replace("\n", ";").replace("\r", ";").encode("utf-8") for s in row]) def export(request): return wrap_response(request, 'export/index.html',{}) -- GitLab