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