diff --git a/docs/release-notes/version-3.2.md b/docs/release-notes/version-3.2.md index 8dc2302e5..4269cb5f0 100644 --- a/docs/release-notes/version-3.2.md +++ b/docs/release-notes/version-3.2.md @@ -15,6 +15,7 @@ * [#9061](https://github.com/netbox-community/netbox/issues/9061) - Change inheritance order for DeviceComponentFilterSets * [#9065](https://github.com/netbox-community/netbox/issues/9065) - Min/max VID should not be required when filtering VLAN groups * [#9079](https://github.com/netbox-community/netbox/issues/9079) - Fail validation when an inventory item is assigned as its own parent +* [#9096](https://github.com/netbox-community/netbox/issues/9096) - Remove duplicate filter tag when filtering by "none" * [#9100](https://github.com/netbox-community/netbox/issues/9100) - Include position field in module type YAML export --- diff --git a/netbox/utilities/forms/utils.py b/netbox/utilities/forms/utils.py index 6d45d524d..db10cf1e0 100644 --- a/netbox/utilities/forms/utils.py +++ b/netbox/utilities/forms/utils.py @@ -144,11 +144,11 @@ def get_selected_values(form, field_name): label for value, label in choices if str(value) in filter_data or None in filter_data ] - if hasattr(field, 'null_option'): - # If the field has a `null_option` attribute set and it is selected, - # add it to the field's grouped choices. - if field.null_option is not None and None in filter_data: - values.append(field.null_option) + # If the field has a `null_option` attribute set and it is selected, + # add it to the field's grouped choices. + if getattr(field, 'null_option') and None in filter_data: + values.remove(None) + values.insert(0, field.null_option) return values