1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Fixes #8010: Allow filtering devices by multiple serial numbers

This commit is contained in:
jeremystretch
2021-12-08 11:08:19 -05:00
parent 4d896573b1
commit 7be6206d9d
3 changed files with 6 additions and 5 deletions

View File

@ -8,6 +8,7 @@
* [#7996](https://github.com/netbox-community/netbox/issues/7996) - Show WWN field in interface creation form * [#7996](https://github.com/netbox-community/netbox/issues/7996) - Show WWN field in interface creation form
* [#8001](https://github.com/netbox-community/netbox/issues/8001) - Correct verbose name for wireless LAN group model * [#8001](https://github.com/netbox-community/netbox/issues/8001) - Correct verbose name for wireless LAN group model
* [#8005](https://github.com/netbox-community/netbox/issues/8005) - Fix contact email display * [#8005](https://github.com/netbox-community/netbox/issues/8005) - Fix contact email display
* [#8010](https://github.com/netbox-community/netbox/issues/8010) - Allow filtering devices by multiple serial numbers
--- ---

View File

@ -718,7 +718,7 @@ class DeviceFilterSet(PrimaryModelFilterSet, TenancyFilterSet, LocalConfigContex
field_name='interfaces__mac_address', field_name='interfaces__mac_address',
label='MAC address', label='MAC address',
) )
serial = django_filters.CharFilter( serial = MultiValueCharFilter(
lookup_expr='iexact' lookup_expr='iexact'
) )
has_primary_ip = django_filters.BooleanFilter( has_primary_ip = django_filters.BooleanFilter(

View File

@ -1420,10 +1420,10 @@ class DeviceTestCase(TestCase, ChangeLoggedFilterSetTests):
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2) self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
def test_serial(self): def test_serial(self):
params = {'serial': 'ABC'} params = {'serial': ['ABC', 'DEF']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1) self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
params = {'serial': 'abc'} params = {'serial': ['abc', 'def']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1) self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
def test_has_primary_ip(self): def test_has_primary_ip(self):
params = {'has_primary_ip': 'true'} params = {'has_primary_ip': 'true'}