mirror of
https://github.com/netbox-community/netbox.git
synced 2026-04-23 01:08:45 +02:00
Pass distinct=False to all MultipleChoiceFilters associated with a concrete model
This commit is contained in:
@@ -209,6 +209,7 @@ class CircuitFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilt
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=CircuitStatusChoices,
|
choices=CircuitStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
region_id = TreeNodeMultipleChoiceFilter(
|
region_id = TreeNodeMultipleChoiceFilter(
|
||||||
@@ -550,6 +551,7 @@ class VirtualCircuitFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=CircuitStatusChoices,
|
choices=CircuitStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -580,6 +582,7 @@ class VirtualCircuitTerminationFilterSet(NetBoxModelFilterSet):
|
|||||||
)
|
)
|
||||||
role = django_filters.MultipleChoiceFilter(
|
role = django_filters.MultipleChoiceFilter(
|
||||||
choices=VirtualCircuitTerminationRoleChoices,
|
choices=VirtualCircuitTerminationRoleChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
provider_id = django_filters.ModelMultipleChoiceFilter(
|
provider_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
|
|||||||
@@ -25,14 +25,17 @@ __all__ = (
|
|||||||
class DataSourceFilterSet(PrimaryModelFilterSet):
|
class DataSourceFilterSet(PrimaryModelFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=get_data_backend_choices,
|
choices=get_data_backend_choices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=DataSourceStatusChoices,
|
choices=DataSourceStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
sync_interval = django_filters.MultipleChoiceFilter(
|
sync_interval = django_filters.MultipleChoiceFilter(
|
||||||
choices=JobIntervalChoices,
|
choices=JobIntervalChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -130,6 +133,7 @@ class JobFilterSet(BaseFilterSet):
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=JobStatusChoices,
|
choices=JobStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
queue_name = django_filters.CharFilter()
|
queue_name = django_filters.CharFilter()
|
||||||
|
|||||||
@@ -155,6 +155,7 @@ class SiteGroupFilterSet(NestedGroupModelFilterSet, ContactModelFilterSet):
|
|||||||
class SiteFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
class SiteFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=SiteStatusChoices,
|
choices=SiteStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
region_id = TreeNodeMultipleChoiceFilter(
|
region_id = TreeNodeMultipleChoiceFilter(
|
||||||
@@ -283,6 +284,7 @@ class LocationFilterSet(TenancyFilterSet, ContactModelFilterSet, NestedGroupMode
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=LocationStatusChoices,
|
choices=LocationStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -323,10 +325,12 @@ class RackTypeFilterSet(PrimaryModelFilterSet):
|
|||||||
label=_('Manufacturer (slug)'),
|
label=_('Manufacturer (slug)'),
|
||||||
)
|
)
|
||||||
form_factor = django_filters.MultipleChoiceFilter(
|
form_factor = django_filters.MultipleChoiceFilter(
|
||||||
choices=RackFormFactorChoices
|
choices=RackFormFactorChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
width = django_filters.MultipleChoiceFilter(
|
width = django_filters.MultipleChoiceFilter(
|
||||||
choices=RackWidthChoices
|
choices=RackWidthChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
@@ -429,13 +433,16 @@ class RackFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterS
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=RackStatusChoices,
|
choices=RackStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
form_factor = django_filters.MultipleChoiceFilter(
|
form_factor = django_filters.MultipleChoiceFilter(
|
||||||
choices=RackFormFactorChoices
|
choices=RackFormFactorChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
width = django_filters.MultipleChoiceFilter(
|
width = django_filters.MultipleChoiceFilter(
|
||||||
choices=RackWidthChoices
|
choices=RackWidthChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
role_id = django_filters.ModelMultipleChoiceFilter(
|
role_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=RackRole.objects.all(),
|
queryset=RackRole.objects.all(),
|
||||||
@@ -535,6 +542,7 @@ class RackReservationFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=RackReservationStatusChoices,
|
choices=RackReservationStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
user_id = django_filters.ModelMultipleChoiceFilter(
|
user_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -891,6 +899,7 @@ class PowerPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeCo
|
|||||||
class PowerOutletTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
class PowerOutletTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
||||||
feed_leg = django_filters.MultipleChoiceFilter(
|
feed_leg = django_filters.MultipleChoiceFilter(
|
||||||
choices=PowerOutletFeedLegChoices,
|
choices=PowerOutletFeedLegChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
power_port_id = django_filters.ModelMultipleChoiceFilter(
|
power_port_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -908,6 +917,7 @@ class PowerOutletTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceType
|
|||||||
class InterfaceTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
class InterfaceTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfaceTypeChoices,
|
choices=InterfaceTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
bridge_id = django_filters.ModelMultipleChoiceFilter(
|
bridge_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -916,13 +926,16 @@ class InterfaceTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeCo
|
|||||||
distinct=False,
|
distinct=False,
|
||||||
)
|
)
|
||||||
poe_mode = django_filters.MultipleChoiceFilter(
|
poe_mode = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfacePoEModeChoices
|
choices=InterfacePoEModeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
poe_type = django_filters.MultipleChoiceFilter(
|
poe_type = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfacePoETypeChoices
|
choices=InterfacePoETypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
rf_role = django_filters.MultipleChoiceFilter(
|
rf_role = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessRoleChoices
|
choices=WirelessRoleChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
@@ -934,6 +947,7 @@ class InterfaceTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeCo
|
|||||||
class FrontPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
class FrontPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=PortTypeChoices,
|
choices=PortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
rear_port_id = django_filters.ModelMultipleChoiceFilter(
|
rear_port_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -952,6 +966,7 @@ class FrontPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeCo
|
|||||||
class RearPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
class RearPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeComponentFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=PortTypeChoices,
|
choices=PortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
front_port_id = django_filters.ModelMultipleChoiceFilter(
|
front_port_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -1288,6 +1303,7 @@ class DeviceFilterSet(
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=DeviceStatusChoices,
|
choices=DeviceStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
is_full_depth = django_filters.BooleanFilter(
|
is_full_depth = django_filters.BooleanFilter(
|
||||||
@@ -1469,7 +1485,8 @@ class VirtualDeviceContextFilterSet(PrimaryModelFilterSet, TenancyFilterSet, Pri
|
|||||||
label=_('Interface (ID)')
|
label=_('Interface (ID)')
|
||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=VirtualDeviceContextStatusChoices
|
choices=VirtualDeviceContextStatusChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
has_primary_ip = django_filters.BooleanFilter(
|
has_primary_ip = django_filters.BooleanFilter(
|
||||||
method='_has_primary_ip',
|
method='_has_primary_ip',
|
||||||
@@ -1614,6 +1631,7 @@ class ModuleFilterSet(PrimaryModelFilterSet):
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=ModuleStatusChoices,
|
choices=ModuleStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
serial = MultiValueCharFilter(
|
serial = MultiValueCharFilter(
|
||||||
@@ -1759,6 +1777,7 @@ class DeviceComponentFilterSet(OwnerFilterMixin, NetBoxModelFilterSet):
|
|||||||
)
|
)
|
||||||
device_status = django_filters.MultipleChoiceFilter(
|
device_status = django_filters.MultipleChoiceFilter(
|
||||||
choices=DeviceStatusChoices,
|
choices=DeviceStatusChoices,
|
||||||
|
distinct=False,
|
||||||
field_name='device__status',
|
field_name='device__status',
|
||||||
)
|
)
|
||||||
tenant_id = django_filters.ModelMultipleChoiceFilter(
|
tenant_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -1835,6 +1854,7 @@ class PathEndpointFilterSet(django_filters.FilterSet):
|
|||||||
class ConsolePortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
class ConsolePortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=ConsolePortTypeChoices,
|
choices=ConsolePortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -1849,6 +1869,7 @@ class ConsolePortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSe
|
|||||||
class ConsoleServerPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
class ConsoleServerPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=ConsolePortTypeChoices,
|
choices=ConsolePortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -1863,6 +1884,7 @@ class ConsoleServerPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFi
|
|||||||
class PowerPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
class PowerPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=PowerPortTypeChoices,
|
choices=PowerPortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -1878,10 +1900,12 @@ class PowerPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet,
|
|||||||
class PowerOutletFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
class PowerOutletFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet, PathEndpointFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=PowerOutletTypeChoices,
|
choices=PowerOutletTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
feed_leg = django_filters.MultipleChoiceFilter(
|
feed_leg = django_filters.MultipleChoiceFilter(
|
||||||
choices=PowerOutletFeedLegChoices,
|
choices=PowerOutletFeedLegChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
power_port_id = django_filters.ModelMultipleChoiceFilter(
|
power_port_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -1891,6 +1915,7 @@ class PowerOutletFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSe
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=PowerOutletStatusChoices,
|
choices=PowerOutletStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -2019,6 +2044,7 @@ class MACAddressFilterSet(PrimaryModelFilterSet):
|
|||||||
class CommonInterfaceFilterSet(django_filters.FilterSet):
|
class CommonInterfaceFilterSet(django_filters.FilterSet):
|
||||||
mode = django_filters.MultipleChoiceFilter(
|
mode = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfaceModeChoices,
|
choices=InterfaceModeChoices,
|
||||||
|
distinct=False,
|
||||||
label=_('802.1Q Mode')
|
label=_('802.1Q Mode')
|
||||||
)
|
)
|
||||||
vlan_id = django_filters.CharFilter(
|
vlan_id = django_filters.CharFilter(
|
||||||
@@ -2139,7 +2165,8 @@ class InterfaceFilterSet(
|
|||||||
)
|
)
|
||||||
speed = MultiValueNumberFilter()
|
speed = MultiValueNumberFilter()
|
||||||
duplex = django_filters.MultipleChoiceFilter(
|
duplex = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfaceDuplexChoices
|
choices=InterfaceDuplexChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
mac_address = MultiValueMACAddressFilter(
|
mac_address = MultiValueMACAddressFilter(
|
||||||
field_name='mac_addresses__mac_address',
|
field_name='mac_addresses__mac_address',
|
||||||
@@ -2160,20 +2187,25 @@ class InterfaceFilterSet(
|
|||||||
)
|
)
|
||||||
wwn = MultiValueWWNFilter()
|
wwn = MultiValueWWNFilter()
|
||||||
poe_mode = django_filters.MultipleChoiceFilter(
|
poe_mode = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfacePoEModeChoices
|
choices=InterfacePoEModeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
poe_type = django_filters.MultipleChoiceFilter(
|
poe_type = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfacePoETypeChoices
|
choices=InterfacePoETypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=InterfaceTypeChoices,
|
choices=InterfaceTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
rf_role = django_filters.MultipleChoiceFilter(
|
rf_role = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessRoleChoices
|
choices=WirelessRoleChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
rf_channel = django_filters.MultipleChoiceFilter(
|
rf_channel = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessChannelChoices
|
choices=WirelessChannelChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
vdc_id = django_filters.ModelMultipleChoiceFilter(
|
vdc_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
field_name='vdcs',
|
field_name='vdcs',
|
||||||
@@ -2261,6 +2293,7 @@ class InterfaceFilterSet(
|
|||||||
class FrontPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet):
|
class FrontPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=PortTypeChoices,
|
choices=PortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
rear_port_id = django_filters.ModelMultipleChoiceFilter(
|
rear_port_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -2282,6 +2315,7 @@ class FrontPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet)
|
|||||||
class RearPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet):
|
class RearPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=PortTypeChoices,
|
choices=PortTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
front_port_id = django_filters.ModelMultipleChoiceFilter(
|
front_port_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -2375,6 +2409,7 @@ class InventoryItemFilterSet(DeviceComponentFilterSet):
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=InventoryItemStatusChoices,
|
choices=InventoryItemStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -2507,16 +2542,20 @@ class CableFilterSet(TenancyFilterSet, PrimaryModelFilterSet):
|
|||||||
label=_('Unterminated'),
|
label=_('Unterminated'),
|
||||||
)
|
)
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=CableTypeChoices
|
choices=CableTypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=LinkStatusChoices
|
choices=LinkStatusChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
profile = django_filters.MultipleChoiceFilter(
|
profile = django_filters.MultipleChoiceFilter(
|
||||||
choices=CableProfileChoices
|
choices=CableProfileChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
color = django_filters.MultipleChoiceFilter(
|
color = django_filters.MultipleChoiceFilter(
|
||||||
choices=ColorChoices
|
choices=ColorChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
device_id = MultiValueNumberFilter(
|
device_id = MultiValueNumberFilter(
|
||||||
method='filter_by_termination'
|
method='filter_by_termination'
|
||||||
@@ -2783,6 +2822,7 @@ class PowerFeedFilterSet(PrimaryModelFilterSet, CabledObjectFilterSet, PathEndpo
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=PowerFeedStatusChoices,
|
choices=PowerFeedStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -72,7 +72,8 @@ class WebhookFilterSet(OwnerFilterMixin, NetBoxModelFilterSet):
|
|||||||
label=_('Search'),
|
label=_('Search'),
|
||||||
)
|
)
|
||||||
http_method = django_filters.MultipleChoiceFilter(
|
http_method = django_filters.MultipleChoiceFilter(
|
||||||
choices=WebhookHttpMethodChoices
|
choices=WebhookHttpMethodChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
payload_url = MultiValueCharFilter(
|
payload_url = MultiValueCharFilter(
|
||||||
lookup_expr='icontains'
|
lookup_expr='icontains'
|
||||||
@@ -112,7 +113,8 @@ class EventRuleFilterSet(OwnerFilterMixin, NetBoxModelFilterSet):
|
|||||||
method='filter_event_type'
|
method='filter_event_type'
|
||||||
)
|
)
|
||||||
action_type = django_filters.MultipleChoiceFilter(
|
action_type = django_filters.MultipleChoiceFilter(
|
||||||
choices=EventRuleActionChoices
|
choices=EventRuleActionChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
action_object_type = ContentTypeFilter()
|
action_object_type = ContentTypeFilter()
|
||||||
action_object_id = MultiValueNumberFilter()
|
action_object_id = MultiValueNumberFilter()
|
||||||
@@ -143,7 +145,8 @@ class CustomFieldFilterSet(OwnerFilterMixin, ChangeLoggedModelFilterSet):
|
|||||||
label=_('Search'),
|
label=_('Search'),
|
||||||
)
|
)
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=CustomFieldTypeChoices
|
choices=CustomFieldTypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
object_type_id = django_filters.ModelMultipleChoiceFilter(
|
object_type_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=ObjectType.objects.all(),
|
queryset=ObjectType.objects.all(),
|
||||||
@@ -512,7 +515,8 @@ class JournalEntryFilterSet(NetBoxModelFilterSet):
|
|||||||
label=_('User (name)'),
|
label=_('User (name)'),
|
||||||
)
|
)
|
||||||
kind = django_filters.MultipleChoiceFilter(
|
kind = django_filters.MultipleChoiceFilter(
|
||||||
choices=JournalEntryKindChoices
|
choices=JournalEntryKindChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|||||||
@@ -406,6 +406,7 @@ class PrefixFilterSet(PrimaryModelFilterSet, ScopedFilterSet, TenancyFilterSet,
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=PrefixStatusChoices,
|
choices=PrefixStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -523,6 +524,7 @@ class IPRangeFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilt
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=IPRangeStatusChoices,
|
choices=IPRangeStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
parent = MultiValueCharFilter(
|
parent = MultiValueCharFilter(
|
||||||
@@ -684,10 +686,12 @@ class IPAddressFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFi
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=IPAddressStatusChoices,
|
choices=IPAddressStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
role = django_filters.MultipleChoiceFilter(
|
role = django_filters.MultipleChoiceFilter(
|
||||||
choices=IPAddressRoleChoices
|
choices=IPAddressRoleChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
service_id = django_filters.ModelMultipleChoiceFilter(
|
service_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
field_name='services',
|
field_name='services',
|
||||||
@@ -819,10 +823,12 @@ class IPAddressFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFi
|
|||||||
@register_filterset
|
@register_filterset
|
||||||
class FHRPGroupFilterSet(PrimaryModelFilterSet):
|
class FHRPGroupFilterSet(PrimaryModelFilterSet):
|
||||||
protocol = django_filters.MultipleChoiceFilter(
|
protocol = django_filters.MultipleChoiceFilter(
|
||||||
choices=FHRPGroupProtocolChoices
|
choices=FHRPGroupProtocolChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
auth_type = django_filters.MultipleChoiceFilter(
|
auth_type = django_filters.MultipleChoiceFilter(
|
||||||
choices=FHRPGroupAuthTypeChoices
|
choices=FHRPGroupAuthTypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
related_ip = django_filters.ModelMultipleChoiceFilter(
|
related_ip = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=IPAddress.objects.all(),
|
queryset=IPAddress.objects.all(),
|
||||||
@@ -1036,6 +1042,7 @@ class VLANFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=VLANStatusChoices,
|
choices=VLANStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
available_at_site = django_filters.ModelChoiceFilter(
|
available_at_site = django_filters.ModelChoiceFilter(
|
||||||
@@ -1051,7 +1058,8 @@ class VLANFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
|
|||||||
method='get_for_virtualmachine'
|
method='get_for_virtualmachine'
|
||||||
)
|
)
|
||||||
qinq_role = django_filters.MultipleChoiceFilter(
|
qinq_role = django_filters.MultipleChoiceFilter(
|
||||||
choices=VLANQinQRoleChoices
|
choices=VLANQinQRoleChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
qinq_svlan_id = django_filters.ModelMultipleChoiceFilter(
|
qinq_svlan_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=VLAN.objects.all(),
|
queryset=VLAN.objects.all(),
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ class ClusterFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ScopedFilterSet,
|
|||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=ClusterStatusChoices,
|
choices=ClusterStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -98,10 +99,12 @@ class VirtualMachineFilterSet(
|
|||||||
):
|
):
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=VirtualMachineStatusChoices,
|
choices=VirtualMachineStatusChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
start_on_boot = django_filters.MultipleChoiceFilter(
|
start_on_boot = django_filters.MultipleChoiceFilter(
|
||||||
choices=VirtualMachineStartOnBootChoices,
|
choices=VirtualMachineStartOnBootChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
cluster_group_id = django_filters.ModelMultipleChoiceFilter(
|
cluster_group_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
|
|||||||
@@ -38,7 +38,8 @@ class TunnelGroupFilterSet(OrganizationalModelFilterSet, ContactModelFilterSet):
|
|||||||
@register_filterset
|
@register_filterset
|
||||||
class TunnelFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
class TunnelFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=TunnelStatusChoices
|
choices=TunnelStatusChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
group_id = django_filters.ModelMultipleChoiceFilter(
|
group_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=TunnelGroup.objects.all(),
|
queryset=TunnelGroup.objects.all(),
|
||||||
@@ -53,7 +54,8 @@ class TunnelFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilte
|
|||||||
label=_('Tunnel group (slug)'),
|
label=_('Tunnel group (slug)'),
|
||||||
)
|
)
|
||||||
encapsulation = django_filters.MultipleChoiceFilter(
|
encapsulation = django_filters.MultipleChoiceFilter(
|
||||||
choices=TunnelEncapsulationChoices
|
choices=TunnelEncapsulationChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
ipsec_profile_id = django_filters.ModelMultipleChoiceFilter(
|
ipsec_profile_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=IPSecProfile.objects.all(),
|
queryset=IPSecProfile.objects.all(),
|
||||||
@@ -98,7 +100,8 @@ class TunnelTerminationFilterSet(NetBoxModelFilterSet):
|
|||||||
label=_('Tunnel (name)'),
|
label=_('Tunnel (name)'),
|
||||||
)
|
)
|
||||||
role = django_filters.MultipleChoiceFilter(
|
role = django_filters.MultipleChoiceFilter(
|
||||||
choices=TunnelTerminationRoleChoices
|
choices=TunnelTerminationRoleChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
termination_type = ContentTypeFilter()
|
termination_type = ContentTypeFilter()
|
||||||
interface = django_filters.ModelMultipleChoiceFilter(
|
interface = django_filters.ModelMultipleChoiceFilter(
|
||||||
@@ -149,16 +152,20 @@ class IKEProposalFilterSet(PrimaryModelFilterSet):
|
|||||||
label=_('IKE policy (name)'),
|
label=_('IKE policy (name)'),
|
||||||
)
|
)
|
||||||
authentication_method = django_filters.MultipleChoiceFilter(
|
authentication_method = django_filters.MultipleChoiceFilter(
|
||||||
choices=AuthenticationMethodChoices
|
choices=AuthenticationMethodChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
encryption_algorithm = django_filters.MultipleChoiceFilter(
|
encryption_algorithm = django_filters.MultipleChoiceFilter(
|
||||||
choices=EncryptionAlgorithmChoices
|
choices=EncryptionAlgorithmChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
authentication_algorithm = django_filters.MultipleChoiceFilter(
|
authentication_algorithm = django_filters.MultipleChoiceFilter(
|
||||||
choices=AuthenticationAlgorithmChoices
|
choices=AuthenticationAlgorithmChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
group = django_filters.MultipleChoiceFilter(
|
group = django_filters.MultipleChoiceFilter(
|
||||||
choices=DHGroupChoices
|
choices=DHGroupChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
@@ -178,10 +185,12 @@ class IKEProposalFilterSet(PrimaryModelFilterSet):
|
|||||||
@register_filterset
|
@register_filterset
|
||||||
class IKEPolicyFilterSet(PrimaryModelFilterSet):
|
class IKEPolicyFilterSet(PrimaryModelFilterSet):
|
||||||
version = django_filters.MultipleChoiceFilter(
|
version = django_filters.MultipleChoiceFilter(
|
||||||
choices=IKEVersionChoices
|
choices=IKEVersionChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
mode = django_filters.MultipleChoiceFilter(
|
mode = django_filters.MultipleChoiceFilter(
|
||||||
choices=IKEModeChoices
|
choices=IKEModeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
ike_proposal_id = django_filters.ModelMultipleChoiceFilter(
|
ike_proposal_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
field_name='proposals',
|
field_name='proposals',
|
||||||
@@ -221,10 +230,12 @@ class IPSecProposalFilterSet(PrimaryModelFilterSet):
|
|||||||
label=_('IPSec policy (name)'),
|
label=_('IPSec policy (name)'),
|
||||||
)
|
)
|
||||||
encryption_algorithm = django_filters.MultipleChoiceFilter(
|
encryption_algorithm = django_filters.MultipleChoiceFilter(
|
||||||
choices=EncryptionAlgorithmChoices
|
choices=EncryptionAlgorithmChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
authentication_algorithm = django_filters.MultipleChoiceFilter(
|
authentication_algorithm = django_filters.MultipleChoiceFilter(
|
||||||
choices=AuthenticationAlgorithmChoices
|
choices=AuthenticationAlgorithmChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
@@ -244,7 +255,8 @@ class IPSecProposalFilterSet(PrimaryModelFilterSet):
|
|||||||
@register_filterset
|
@register_filterset
|
||||||
class IPSecPolicyFilterSet(PrimaryModelFilterSet):
|
class IPSecPolicyFilterSet(PrimaryModelFilterSet):
|
||||||
pfs_group = django_filters.MultipleChoiceFilter(
|
pfs_group = django_filters.MultipleChoiceFilter(
|
||||||
choices=DHGroupChoices
|
choices=DHGroupChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
ipsec_proposal_id = django_filters.ModelMultipleChoiceFilter(
|
ipsec_proposal_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
field_name='proposals',
|
field_name='proposals',
|
||||||
@@ -273,7 +285,8 @@ class IPSecPolicyFilterSet(PrimaryModelFilterSet):
|
|||||||
@register_filterset
|
@register_filterset
|
||||||
class IPSecProfileFilterSet(PrimaryModelFilterSet):
|
class IPSecProfileFilterSet(PrimaryModelFilterSet):
|
||||||
mode = django_filters.MultipleChoiceFilter(
|
mode = django_filters.MultipleChoiceFilter(
|
||||||
choices=IPSecModeChoices
|
choices=IPSecModeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
ike_policy_id = django_filters.ModelMultipleChoiceFilter(
|
ike_policy_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=IKEPolicy.objects.all(),
|
queryset=IKEPolicy.objects.all(),
|
||||||
@@ -318,10 +331,12 @@ class IPSecProfileFilterSet(PrimaryModelFilterSet):
|
|||||||
class L2VPNFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
class L2VPNFilterSet(PrimaryModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
||||||
type = django_filters.MultipleChoiceFilter(
|
type = django_filters.MultipleChoiceFilter(
|
||||||
choices=L2VPNTypeChoices,
|
choices=L2VPNTypeChoices,
|
||||||
|
distinct=False,
|
||||||
null_value=None
|
null_value=None
|
||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=L2VPNStatusChoices,
|
choices=L2VPNStatusChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
import_target_id = django_filters.ModelMultipleChoiceFilter(
|
import_target_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
field_name='import_targets',
|
field_name='import_targets',
|
||||||
|
|||||||
@@ -62,7 +62,8 @@ class WirelessLANFilterSet(PrimaryModelFilterSet, ScopedFilterSet, TenancyFilter
|
|||||||
to_field_name='slug'
|
to_field_name='slug'
|
||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessLANStatusChoices
|
choices=WirelessLANStatusChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
vlan_id = django_filters.ModelMultipleChoiceFilter(
|
vlan_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=VLAN.objects.all(),
|
queryset=VLAN.objects.all(),
|
||||||
@@ -73,10 +74,12 @@ class WirelessLANFilterSet(PrimaryModelFilterSet, ScopedFilterSet, TenancyFilter
|
|||||||
field_name='interfaces'
|
field_name='interfaces'
|
||||||
)
|
)
|
||||||
auth_type = django_filters.MultipleChoiceFilter(
|
auth_type = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessAuthTypeChoices
|
choices=WirelessAuthTypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
auth_cipher = django_filters.MultipleChoiceFilter(
|
auth_cipher = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessAuthCipherChoices
|
choices=WirelessAuthCipherChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
@@ -104,13 +107,16 @@ class WirelessLinkFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
|
|||||||
distinct=False,
|
distinct=False,
|
||||||
)
|
)
|
||||||
status = django_filters.MultipleChoiceFilter(
|
status = django_filters.MultipleChoiceFilter(
|
||||||
choices=LinkStatusChoices
|
choices=LinkStatusChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
auth_type = django_filters.MultipleChoiceFilter(
|
auth_type = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessAuthTypeChoices
|
choices=WirelessAuthTypeChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
auth_cipher = django_filters.MultipleChoiceFilter(
|
auth_cipher = django_filters.MultipleChoiceFilter(
|
||||||
choices=WirelessAuthCipherChoices
|
choices=WirelessAuthCipherChoices,
|
||||||
|
distinct=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|||||||
Reference in New Issue
Block a user