diff options
Diffstat (limited to 'ishtar_common/forms.py')
-rw-r--r-- | ishtar_common/forms.py | 10 |
1 files changed, 8 insertions, 2 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: |