Apply suggestions from code review

Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
This commit is contained in:
Daniel Sheppard 2024-02-20 08:12:16 -06:00 committed by GitHub
parent 31ad7119e7
commit b6a981895a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 1 additions and 17 deletions

View File

@ -824,10 +824,6 @@ class PlatformFilterSet(OrganizationalModelFilterSet):
queryset=DeviceType.objects.all(), queryset=DeviceType.objects.all(),
method='get_for_device_type' method='get_for_device_type'
) )
available_for_manufacturer = django_filters.ModelChoiceFilter(
queryset=Manufacturer.objects.all(),
method='get_for_manufacturer'
)
config_template_id = django_filters.ModelMultipleChoiceFilter( config_template_id = django_filters.ModelMultipleChoiceFilter(
queryset=ConfigTemplate.objects.all(), queryset=ConfigTemplate.objects.all(),
label=_('Config template (ID)'), label=_('Config template (ID)'),
@ -845,13 +841,6 @@ class PlatformFilterSet(OrganizationalModelFilterSet):
""" """
return queryset.filter(Q(manufacturer=None) | Q(manufacturer__device_types=value)) return queryset.filter(Q(manufacturer=None) | Q(manufacturer__device_types=value))
@extend_schema_field(OpenApiTypes.STR)
def get_for_manufacturer(self, queryset, name, value):
"""
Return all Platforms available for a specific manufacturer and Platforms not assigned any manufacturer
"""
return queryset.filter(Q(manufacturer=None) | Q(**{f'manufacturer': value}))
class DeviceFilterSet( class DeviceFilterSet(
NetBoxModelFilterSet, NetBoxModelFilterSet,

View File

@ -294,7 +294,7 @@ class DeviceTypeForm(NetBoxModelForm):
required=False, required=False,
selector=True, selector=True,
query_params={ query_params={
'available_for_manufacturer': '$manufacturer', 'manufacturer_id': ['$manufacturer', 'null'],
} }
) )
slug = SlugField( slug = SlugField(

View File

@ -1825,11 +1825,6 @@ class PlatformTestCase(TestCase, ChangeLoggedFilterSetTests):
params = {'available_for_device_type': device_type.pk} params = {'available_for_device_type': device_type.pk}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2) self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
def test_available_for_manufacturer(self):
manufacturer = Manufacturer.objects.first()
params = {'available_for_manufacturer': manufacturer.pk}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
class DeviceTestCase(TestCase, ChangeLoggedFilterSetTests): class DeviceTestCase(TestCase, ChangeLoggedFilterSetTests):
queryset = Device.objects.all() queryset = Device.objects.all()