From b3b1060d502f609981fb8eaf3010cacbfb549795 Mon Sep 17 00:00:00 2001 From: olivier larcheveque Date: Tue, 28 Sep 2010 17:42:33 -0400 Subject: [PATCH] prevention encodage --- auf_savoirs_en_partage/savoirs/lib/sep.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/auf_savoirs_en_partage/savoirs/lib/sep.py b/auf_savoirs_en_partage/savoirs/lib/sep.py index c53cc9b..36c7c88 100644 --- a/auf_savoirs_en_partage/savoirs/lib/sep.py +++ b/auf_savoirs_en_partage/savoirs/lib/sep.py @@ -14,8 +14,11 @@ class SEPEncoder: Elle permet de corrgier les problèmes d'encodage.""" if str is None: return u"" - else: - return str.replace(u"\x92", u"´") + + if str.__class__.__name__ == 'str': + str = str.decode('utf-8') + + return str.replace(u"\x92", u"´") def encode(self, field, data): """Encode la structure de donnée moissonnée pour la BD""" @@ -67,6 +70,7 @@ class SEP: # doit avoir un id pour créer les relations multivaluées record.save() + for set in [ls for ls in ListSet.objects.all() if ls.spec in value]: record.listsets.add(set) @@ -86,10 +90,9 @@ class SEP: for k in META.keys (): v = getattr (r, k) setattr (r, k, self.encoder.propre(v)) - + r.save() - def _save (self, metadata): r = Record () self._update_record(r, metadata) -- 1.7.10.4