summaryrefslogtreecommitdiff
path: root/ishtar_common/forms.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-09-10 22:17:23 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-10-24 12:06:08 +0200
commit3e9cfd35489f6f24e69edb5b1fdcbfe9766f7e7f (patch)
treef68ea36db5923b57f487ada954bc133318f1030c /ishtar_common/forms.py
parentf3152095ff38920754792d6c36c31a54d1b38dc7 (diff)
downloadIshtar-3e9cfd35489f6f24e69edb5b1fdcbfe9766f7e7f.tar.bz2
Ishtar-3e9cfd35489f6f24e69edb5b1fdcbfe9766f7e7f.zip
QA bulk update: fix m2m display
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: