Skip to content

Commit b7f028f

Browse files
committed
Fixes #12550: Fix rear port selection widget under front port creation form
1 parent 2d0ac21 commit b7f028f

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

docs/release-notes/version-3.5.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
* [#12323](https://github.com/netbox-community/netbox/issues/12323) - Add 100GE CXP interface type
1414
* [#12498](https://github.com/netbox-community/netbox/issues/12498) - Hide map button if `MAPS_URL` is empty
1515

16+
### Bug Fixes
17+
18+
* [#12550](https://github.com/netbox-community/netbox/issues/12550) - Fix rear port selection widget under front port creation form
19+
1620
---
1721

1822
## v3.5.1 (2023-05-05)

netbox/dcim/forms/object_create.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,7 @@ class FrontPortCreateForm(ComponentCreateForm, model_forms.FrontPortForm):
242242
choices=[],
243243
label=_('Rear ports'),
244244
help_text=_('Select one rear port assignment for each front port being created.'),
245+
widget=forms.SelectMultiple(attrs={'size': 6})
245246
)
246247

247248
# Override fieldsets from FrontPortForm to omit rear_port_position

netbox/utilities/forms/mixins.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ def __init__(self, *args, **kwargs):
3232
elif isinstance(field.widget, forms.CheckboxInput):
3333
field.widget.attrs['class'] = f'{css} form-check-input'
3434

35-
elif isinstance(field.widget, forms.SelectMultiple):
36-
if 'size' not in field.widget.attrs:
37-
field.widget.attrs['class'] = f'{css} netbox-static-select'
35+
elif isinstance(field.widget, forms.SelectMultiple) and 'size' in field.widget.attrs:
36+
# Use native Bootstrap class for multi-line <select> widgets
37+
field.widget.attrs['class'] = f'{css} form-select form-select-sm'
3838

39-
elif isinstance(field.widget, forms.Select):
39+
elif isinstance(field.widget, (forms.Select, forms.SelectMultiple)):
4040
field.widget.attrs['class'] = f'{css} netbox-static-select'
4141

4242
else:

0 commit comments

Comments
 (0)