mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-19 09:53:34 -06:00
* Closes #9060: Implement modulebay, iventory items and device bay filters * add blank line
This commit is contained in:
parent
d4f1cb5d6a
commit
a3805fe04d
@ -435,6 +435,10 @@ class DeviceTypeFilterSet(NetBoxModelFilterSet):
|
|||||||
method='_device_bays',
|
method='_device_bays',
|
||||||
label='Has device bays',
|
label='Has device bays',
|
||||||
)
|
)
|
||||||
|
inventory_items = django_filters.BooleanFilter(
|
||||||
|
method='_inventory_items',
|
||||||
|
label='Has inventory items',
|
||||||
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = DeviceType
|
model = DeviceType
|
||||||
@ -479,6 +483,9 @@ class DeviceTypeFilterSet(NetBoxModelFilterSet):
|
|||||||
def _device_bays(self, queryset, name, value):
|
def _device_bays(self, queryset, name, value):
|
||||||
return queryset.exclude(devicebaytemplates__isnull=value)
|
return queryset.exclude(devicebaytemplates__isnull=value)
|
||||||
|
|
||||||
|
def _inventory_items(self, queryset, name, value):
|
||||||
|
return queryset.exclude(inventoryitemtemplates__isnull=value)
|
||||||
|
|
||||||
|
|
||||||
class ModuleTypeFilterSet(NetBoxModelFilterSet):
|
class ModuleTypeFilterSet(NetBoxModelFilterSet):
|
||||||
manufacturer_id = django_filters.ModelMultipleChoiceFilter(
|
manufacturer_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
|
@ -331,7 +331,7 @@ class DeviceTypeFilterForm(NetBoxModelFilterSetForm):
|
|||||||
('Hardware', ('manufacturer_id', 'part_number', 'subdevice_role', 'airflow')),
|
('Hardware', ('manufacturer_id', 'part_number', 'subdevice_role', 'airflow')),
|
||||||
('Components', (
|
('Components', (
|
||||||
'console_ports', 'console_server_ports', 'power_ports', 'power_outlets', 'interfaces',
|
'console_ports', 'console_server_ports', 'power_ports', 'power_outlets', 'interfaces',
|
||||||
'pass_through_ports',
|
'pass_through_ports', 'device_bays', 'module_bays', 'inventory_items',
|
||||||
)),
|
)),
|
||||||
)
|
)
|
||||||
manufacturer_id = DynamicModelMultipleChoiceField(
|
manufacturer_id = DynamicModelMultipleChoiceField(
|
||||||
@ -392,6 +392,27 @@ class DeviceTypeFilterForm(NetBoxModelFilterSetForm):
|
|||||||
choices=BOOLEAN_WITH_BLANK_CHOICES
|
choices=BOOLEAN_WITH_BLANK_CHOICES
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
device_bays = forms.NullBooleanField(
|
||||||
|
required=False,
|
||||||
|
label='Has device bays',
|
||||||
|
widget=StaticSelect(
|
||||||
|
choices=BOOLEAN_WITH_BLANK_CHOICES
|
||||||
|
)
|
||||||
|
)
|
||||||
|
module_bays = forms.NullBooleanField(
|
||||||
|
required=False,
|
||||||
|
label='Has module bays',
|
||||||
|
widget=StaticSelect(
|
||||||
|
choices=BOOLEAN_WITH_BLANK_CHOICES
|
||||||
|
)
|
||||||
|
)
|
||||||
|
inventory_items = forms.NullBooleanField(
|
||||||
|
required=False,
|
||||||
|
label='Has inventory items',
|
||||||
|
widget=StaticSelect(
|
||||||
|
choices=BOOLEAN_WITH_BLANK_CHOICES
|
||||||
|
)
|
||||||
|
)
|
||||||
tag = TagFilterField(model)
|
tag = TagFilterField(model)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user