diff options
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 |
commit | 3e9cfd35489f6f24e69edb5b1fdcbfe9766f7e7f (patch) | |
tree | f68ea36db5923b57f487ada954bc133318f1030c /ishtar_common/forms.py | |
parent | f3152095ff38920754792d6c36c31a54d1b38dc7 (diff) | |
download | Ishtar-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.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: |