From 938c5033814fe3ad41d60e842041fc783e9e2f93 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 24 Oct 2015 14:46:35 +0200 Subject: Imports: manage concat --- ishtar_common/data_importer.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ishtar_common/data_importer.py b/ishtar_common/data_importer.py index 3d623e7a6..0462e2405 100644 --- a/ishtar_common/data_importer.py +++ b/ishtar_common/data_importer.py @@ -829,10 +829,13 @@ class Importer(object): for idx, key in enumerate(keys): if idx == (len(keys) - 1): # last if concat: + if key not in current_data: + current_data[key] = {} if not value: value = "" - current_data[key] = (current_data[key] + u"\n") or u""\ - + value + current_data[key] = (current_data[key] + u"\n") \ + if current_data[key] else u"" + current_data[key] += value elif force_value and value: current_data[key] = value elif key not in current_data or not current_data[key]: @@ -1121,7 +1124,7 @@ class Importer(object): for idx, field_name in enumerate(field_names): self._field_name_to_data_dict( field_name, value, data, formater.force_value, - force_new=force_news[idx]) + force_new=force_news[idx], concat=formater.concat) c_row.append(u" ; ".join([v for v in c_values])) def get_field(self, cls, attribute, data, m2ms, c_path): @@ -1287,7 +1290,7 @@ class Importer(object): elif k in self.concats \ and type(val) == unicode \ and type(new_val) == unicode: - setattr(obj, k, val + u" - " + new_val) + setattr(obj, k, val + u"\n" + new_val) else: for k in dct['defaults']: new_val = dct['defaults'][k] -- cgit v1.2.3