diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/forms.py | 10 | ||||
| -rw-r--r-- | ishtar_common/models.py | 9 | 
2 files changed, 13 insertions, 6 deletions
| diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index 4bf9e4bd9..5ef65212e 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -669,8 +669,12 @@ class QAForm(CustomForm, ManageOldType):                          self.fields[k].rendered_value = getattr(                              self, "_get_" + k)(kwargs['data'][k])                      elif hasattr(self.fields[k], "choices"): -                        self.fields[k].rendered_value = dict( -                            self.fields[k].choices)[int(kwargs['data'][k])] +                        values = [] +                        for v in kwargs['data'].getlist(k): +                            values.append( +                                dict(self.fields[k].choices)[int(v)]) +                        self.fields[k].rendered_value = mark_safe( +                            u" ; ".join(values))              if k not in self.REPLACE_FIELDS:                  self.fields[k].label = unicode(self.fields[k].label) + \                                         unicode(u" - append to existing") @@ -691,6 +695,8 @@ class QAForm(CustomForm, ManageOldType):              else:                  value = field.related_model.objects.get(pk=value)          if getattr(field, 'many_to_many', None): +            if type(value) not in (list, tuple): +                value = [value]              for v in value:                  getattr(item, key).add(v)          else: diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 0eb43e42b..a097951e0 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -653,9 +653,10 @@ class GeneralType(Cached, models.Model):          if not cache_key:              return cls._get_types(base_dct, instances, exclude=exclude,                                    default=default) -        vals = [v for v in cls._get_types( -            base_dct, instances, exclude=exclude, -            default=default)] +        vals = [ +            v for v in cls._get_types(base_dct, instances, exclude=exclude, +                                      default=default) +        ]          cache.set(cache_key, vals, settings.CACHE_TIMEOUT)          return vals @@ -669,7 +670,7 @@ class GeneralType(Cached, models.Model):          if default:              try:                  default = cls.objects.get(txt_idx=default) -                yield(default.pk, _(unicode(default))) +                yield (default.pk, _(unicode(default)))              except cls.DoesNotExist:                  pass          items = cls.objects.filter(**dct) | 
