summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2025-04-25 12:19:34 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2025-04-25 12:32:58 +0200
commit8e7ba1740f669b80acbd0728e39d9e3cce894b75 (patch)
treed73eaaeccbccee0aac82803eeaeaabbcf2fe8e8a /ishtar_common
parentdff77c3dcda6515008e16e40e9088d3c68f57700 (diff)
downloadIshtar-8e7ba1740f669b80acbd0728e39d9e3cce894b75.tar.bz2
Ishtar-8e7ba1740f669b80acbd0728e39d9e3cce894b75.zip
🐛 forms: fix availability of disabled types on m2m fields (refs #6266)
This bug only occurs when many types are selected.
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/forms.py4
-rw-r--r--ishtar_common/models_common.py2
2 files changed, 4 insertions, 2 deletions
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py
index 468fb32f1..20849c400 100644
--- a/ishtar_common/forms.py
+++ b/ishtar_common/forms.py
@@ -44,6 +44,7 @@ from django.utils.translation import ugettext_lazy as _
from bootstrap_datepicker.widgets import DatePicker, DATE_FORMAT, DateField
from ishtar_common import models
from ishtar_common import widgets
+
from ishtar_common.utils import MultiValueDict
@@ -1194,8 +1195,9 @@ class ManageOldType(IshtarForm):
def _init_type(self, field):
if field.key not in self.fields:
return
+ initial = self.init_data.getlist(field.key)
self.fields[field.key].choices = field.get_choices(
- initial=self.init_data.get(field.key)
+ initial=initial
)
self.fields[field.key].help_text = field.get_help()
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py
index d932abf66..9f5be1e36 100644
--- a/ishtar_common/models_common.py
+++ b/ishtar_common/models_common.py
@@ -349,7 +349,7 @@ class GeneralType(Cached, models.Model):
new_vals = []
if not initial:
return []
- if type(initial) not in (list, tuple):
+ if not isinstance(initial, (list, tuple)):
initial = [initial]
for value in initial:
try: