[5.1.x] Fixed #34789 -- Prevented updateRelatedSelectsOptions from

adding entries to filter_horizontal chosen box.

Co-authored-by: yokeshwaran1 <yokesh440@yahoo.com>

Backport of 719a42b589 from main.
This commit is contained in:
Devin Cox 2024-06-12 11:35:12 +02:00 committed by Sarah Boyce
parent fed3efda15
commit 49a3a8d9a2
5 changed files with 16 additions and 7 deletions

View file

@ -662,7 +662,8 @@ class ModelAdminTests(TestCase):
self.assertHTMLEqual(
str(form["main_band"]),
'<div class="related-widget-wrapper" data-model-ref="band">'
'<select name="main_band" id="id_main_band" required>'
'<select data-context="available-source" '
'name="main_band" id="id_main_band" required>'
'<option value="" selected>---------</option>'
'<option value="%d">The Beatles</option>'
'<option value="%d">The Doors</option>'
@ -685,7 +686,8 @@ class ModelAdminTests(TestCase):
self.assertHTMLEqual(
str(form["main_band"]),
'<div class="related-widget-wrapper" data-model-ref="band">'
'<select name="main_band" id="id_main_band" required>'
'<select data-context="available-source" '
'name="main_band" id="id_main_band" required>'
'<option value="" selected>---------</option>'
'<option value="%d">The Doors</option>'
"</select></div>" % self.band.id,
@ -779,7 +781,8 @@ class ModelAdminTests(TestCase):
type(cmafa.base_fields["main_band"].widget.widget), AdminRadioSelect
)
self.assertEqual(
cmafa.base_fields["main_band"].widget.attrs, {"class": "radiolist inline"}
cmafa.base_fields["main_band"].widget.attrs,
{"class": "radiolist inline", "data-context": "available-source"},
)
self.assertEqual(
list(cmafa.base_fields["main_band"].widget.choices),
@ -790,7 +793,8 @@ class ModelAdminTests(TestCase):
type(cmafa.base_fields["opening_band"].widget.widget), AdminRadioSelect
)
self.assertEqual(
cmafa.base_fields["opening_band"].widget.attrs, {"class": "radiolist"}
cmafa.base_fields["opening_band"].widget.attrs,
{"class": "radiolist", "data-context": "available-source"},
)
self.assertEqual(
list(cmafa.base_fields["opening_band"].widget.choices),