From 5578bf08d4045f29fb23c96e6e4293d10981bdbe Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Thu, 5 Nov 2015 22:32:29 +0100 Subject: [PATCH] fix unicode export bugs --- .../management/commands/telemeta-export-playlist-to-csv.py | 7 ++++++- telemeta/models/core.py | 2 +- telemeta/models/item.py | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/telemeta/management/commands/telemeta-export-playlist-to-csv.py b/telemeta/management/commands/telemeta-export-playlist-to-csv.py index 95d168b2..185df544 100644 --- a/telemeta/management/commands/telemeta-export-playlist-to-csv.py +++ b/telemeta/management/commands/telemeta-export-playlist-to-csv.py @@ -20,7 +20,12 @@ class Command(BaseCommand): public_id = args[-2] f = open(path, 'w') playlist = Playlist.objects.get(public_id=public_id) - elements = playlist.ressources.all() + elements = [] + for resource in playlist.resources.all(): + if resource.resource_type == "item": + elements.append(MediaItem.objects.get(public_id=resource.resource_id)) + elif resource.resource_type == "collection": + elements.append(MediaCollection.objects.get(public_id=resource.resource_id)) writer = UnicodeWriter(f) csv = CSVExport(writer) csv.write(elements) diff --git a/telemeta/models/core.py b/telemeta/models/core.py index 8530310c..5e647bee 100644 --- a/telemeta/models/core.py +++ b/telemeta/models/core.py @@ -184,7 +184,7 @@ class ModelCore(EnhancedModel): "Return model fields as a dict of name/value pairs" fields_dict = {} for field in self._meta.fields: - fields_dict[field.name] = unicode(getattr(self, field.name)) + fields_dict[field.name] = getattr(self, field.name) return fields_dict def to_list(self): diff --git a/telemeta/models/item.py b/telemeta/models/item.py index 32d9422e..20166cc0 100644 --- a/telemeta/models/item.py +++ b/telemeta/models/item.py @@ -296,7 +296,7 @@ class MediaItem(MediaResource): metadata['performers'] = ';'.join(performers) i = 0 - for indentifier in self.identifiers.all(): + for identifier in self.identifiers.all(): metadata['identifier' + '_' + str(i)] = identifier.identifier metadata['identifier_type' + '_' + str(i)] = identifier.type metadata['identifier_date_last' + '_' + str(i)] = unicode(identifier.date_last) -- 2.39.5