diff options
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:19:34 +0200 |
commit | 933b860ec4d636ddc6e75fe70ee9b8e5372d02c9 (patch) | |
tree | 92160ab2a023bdf6416a3b6adc8d67db2be58d5a | |
parent | 32569ae9e3c7d1300f28c7ebe7f1b3e8c10efd41 (diff) | |
download | Ishtar-933b860ec4d636ddc6e75fe70ee9b8e5372d02c9.tar.bz2 Ishtar-933b860ec4d636ddc6e75fe70ee9b8e5372d02c9.zip |
🐛 forms: fix availability of disabled types on m2m fields (refs #6266)
This bug only occurs when many types are selected.
-rw-r--r-- | ishtar_common/forms.py | 6 | ||||
-rw-r--r-- | ishtar_common/models_common.py | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index 29fb33e91..55ba9da7b 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -44,7 +44,8 @@ from django.utils.translation import ugettext_lazy as _ from bootstrap_datepicker.widgets import DatePicker, DATE_FORMAT from ishtar_common import models from ishtar_common import widgets -from ishtar_common.utils import MultiValueDict, update_data, generate_dict_from_data_string +from ishtar_common.utils import MultiValueDict, update_data, \ + generate_dict_from_data_string # from formwizard.forms import NamedUrlSessionFormWizard @@ -1321,8 +1322,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 f537f617a..1f5b1b698 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -352,7 +352,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: |