Merge pull request #9435 from kkthxbye-code/fix-9430

Fixes #9435 - Make sure initial data is passed as array for DynamicModelChoiceFields
This commit is contained in:
Jeremy Stretch 2022-05-31 09:09:42 -04:00 committed by GitHub
commit 2c8a1ed69c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -88,7 +88,12 @@ class DynamicModelChoiceMixin:
# Modify the QuerySet of the field before we return it. Limit choices to any data already bound: Options
# will be populated on-demand via the APISelect widget.
data = bound_field.value()
if data:
# When the field is multiple choice pass the data as a list if it's not already
if isinstance(bound_field.field, DynamicModelMultipleChoiceField) and not type(data) is list:
data = [data]
field_name = getattr(self, 'to_field_name') or 'pk'
filter = self.filter(field_name=field_name)
try: