summaryrefslogtreecommitdiff
path: root/ishtar_common/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/forms.py')
-rw-r--r--ishtar_common/forms.py10
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: