diff options
Diffstat (limited to 'ishtar_common/models_imports.py')
| -rw-r--r-- | ishtar_common/models_imports.py | 17 | 
1 files changed, 13 insertions, 4 deletions
diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py index 2dec39c84..9aae1d52d 100644 --- a/ishtar_common/models_imports.py +++ b/ishtar_common/models_imports.py @@ -238,9 +238,18 @@ def get_associated_model(parent_model, keys):          OBJECT_CLS = import_class(parent_model)      else:          OBJECT_CLS = parent_model +    fields = get_model_fields(OBJECT_CLS)      for idx, item in enumerate(keys):          if not idx: -            field = get_model_fields(OBJECT_CLS)[item] +            if item not in fields: +                raise ImporterError( +                    unicode( +                        _(u"Importer configuration error: " +                          u"\"{}\" is not available for \"{}\"." +                          u" Check your default and column " +                          u"configuration")).format( +                        item, OBJECT_CLS.__name__)) +            field = fields[item]              if hasattr(field, 'rel') and hasattr(field.rel, 'to'):                  model = field.rel.to              if type(field) == ModelBase: @@ -390,7 +399,7 @@ class ImporterColumn(models.Model):          return u', '.join([target.target for target in self.targets.all()])      def duplicate_fields_lbl(self): -        return u', '.join([dp.field_name +        return u', '.join([dp.field_name or u""                             for dp in self.duplicate_fields.all()]) @@ -1058,8 +1067,8 @@ class Import(models.Model):          put_session_message(              session_key,              unicode( -                _(u"Modification check {} added to the queue")).format( -                self.name), +                _(u"Modification check {} added to the queue") +            ).format(self.name),              "info")          self.state = 'HQ'          self.end_date = datetime.datetime.now()  | 
