mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Closes #3154: Add virtual_chassis_member device filter
This commit is contained in:
@ -2,6 +2,7 @@ v2.6.1 (FUTURE)
|
|||||||
|
|
||||||
## Enhancements
|
## Enhancements
|
||||||
|
|
||||||
|
* [#3154](https://github.com/digitalocean/netbox/issues/3154) - Add `virtual_chassis_member` device filter
|
||||||
* [#3277](https://github.com/digitalocean/netbox/issues/3277) - Add cable trace buttons for console and power ports
|
* [#3277](https://github.com/digitalocean/netbox/issues/3277) - Add cable trace buttons for console and power ports
|
||||||
* [#3281](https://github.com/digitalocean/netbox/issues/3281) - Hide custom links which render as empty text
|
* [#3281](https://github.com/digitalocean/netbox/issues/3281) - Hide custom links which render as empty text
|
||||||
|
|
||||||
|
@ -527,6 +527,10 @@ class DeviceFilter(TenancyFilterSet, CustomFieldFilterSet):
|
|||||||
queryset=VirtualChassis.objects.all(),
|
queryset=VirtualChassis.objects.all(),
|
||||||
label='Virtual chassis (ID)',
|
label='Virtual chassis (ID)',
|
||||||
)
|
)
|
||||||
|
virtual_chassis_member = django_filters.BooleanFilter(
|
||||||
|
method='_virtual_chassis_member',
|
||||||
|
label='Is a virtual chassis member'
|
||||||
|
)
|
||||||
console_ports = django_filters.BooleanFilter(
|
console_ports = django_filters.BooleanFilter(
|
||||||
method='_console_ports',
|
method='_console_ports',
|
||||||
label='Has console ports',
|
label='Has console ports',
|
||||||
@ -590,6 +594,9 @@ class DeviceFilter(TenancyFilterSet, CustomFieldFilterSet):
|
|||||||
Q(primary_ip6__isnull=False)
|
Q(primary_ip6__isnull=False)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def _virtual_chassis_member(self, queryset, name, value):
|
||||||
|
return queryset.exclude(virtual_chassis__isnull=value)
|
||||||
|
|
||||||
def _console_ports(self, queryset, name, value):
|
def _console_ports(self, queryset, name, value):
|
||||||
return queryset.exclude(consoleports__isnull=value)
|
return queryset.exclude(consoleports__isnull=value)
|
||||||
|
|
||||||
|
@ -1750,6 +1750,13 @@ class DeviceFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldFilterForm)
|
|||||||
choices=BOOLEAN_WITH_BLANK_CHOICES
|
choices=BOOLEAN_WITH_BLANK_CHOICES
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
virtual_chassis_member = forms.NullBooleanField(
|
||||||
|
required=False,
|
||||||
|
label='Virtual chassis member',
|
||||||
|
widget=StaticSelect2(
|
||||||
|
choices=BOOLEAN_WITH_BLANK_CHOICES
|
||||||
|
)
|
||||||
|
)
|
||||||
console_ports = forms.NullBooleanField(
|
console_ports = forms.NullBooleanField(
|
||||||
required=False,
|
required=False,
|
||||||
label='Has console ports',
|
label='Has console ports',
|
||||||
|
Reference in New Issue
Block a user