mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-31 04:46:26 -06:00
7699 filterset
This commit is contained in:
parent
dcb3c7c113
commit
33b4beba10
@ -3,13 +3,13 @@ from django.db.models import Q
|
|||||||
from django.utils.translation import gettext as _
|
from django.utils.translation import gettext as _
|
||||||
|
|
||||||
from dcim.filtersets import CommonInterfaceFilterSet
|
from dcim.filtersets import CommonInterfaceFilterSet
|
||||||
from dcim.models import Device, DeviceRole, Platform, Region, Site, SiteGroup
|
from dcim.models import Device, DeviceRole, Platform, Location, Region, Site, SiteGroup
|
||||||
from extras.filtersets import LocalConfigContextFilterSet
|
from extras.filtersets import LocalConfigContextFilterSet
|
||||||
from extras.models import ConfigTemplate
|
from extras.models import ConfigTemplate
|
||||||
from ipam.filtersets import PrimaryIPFilterSet
|
from ipam.filtersets import PrimaryIPFilterSet
|
||||||
from netbox.filtersets import OrganizationalModelFilterSet, NetBoxModelFilterSet
|
from netbox.filtersets import OrganizationalModelFilterSet, NetBoxModelFilterSet
|
||||||
from tenancy.filtersets import TenancyFilterSet, ContactModelFilterSet
|
from tenancy.filtersets import TenancyFilterSet, ContactModelFilterSet
|
||||||
from utilities.filters import MultiValueCharFilter, MultiValueMACAddressFilter, TreeNodeMultipleChoiceFilter
|
from utilities.filters import ContentTypeFilter, MultiValueCharFilter, MultiValueMACAddressFilter, TreeNodeMultipleChoiceFilter
|
||||||
from .choices import *
|
from .choices import *
|
||||||
from .models import *
|
from .models import *
|
||||||
|
|
||||||
@ -38,42 +38,57 @@ class ClusterGroupFilterSet(OrganizationalModelFilterSet, ContactModelFilterSet)
|
|||||||
|
|
||||||
|
|
||||||
class ClusterFilterSet(NetBoxModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
class ClusterFilterSet(NetBoxModelFilterSet, TenancyFilterSet, ContactModelFilterSet):
|
||||||
# region_id = TreeNodeMultipleChoiceFilter(
|
scope_type = ContentTypeFilter()
|
||||||
# queryset=Region.objects.all(),
|
region_id = TreeNodeMultipleChoiceFilter(
|
||||||
# field_name='site__region',
|
queryset=Region.objects.all(),
|
||||||
# lookup_expr='in',
|
field_name='_region',
|
||||||
# label=_('Region (ID)'),
|
lookup_expr='in',
|
||||||
# )
|
label=_('Region (ID)'),
|
||||||
# region = TreeNodeMultipleChoiceFilter(
|
)
|
||||||
# queryset=Region.objects.all(),
|
region = TreeNodeMultipleChoiceFilter(
|
||||||
# field_name='site__region',
|
queryset=Region.objects.all(),
|
||||||
# lookup_expr='in',
|
field_name='_region',
|
||||||
# to_field_name='slug',
|
lookup_expr='in',
|
||||||
# label=_('Region (slug)'),
|
to_field_name='slug',
|
||||||
# )
|
label=_('Region (slug)'),
|
||||||
# site_group_id = TreeNodeMultipleChoiceFilter(
|
)
|
||||||
# queryset=SiteGroup.objects.all(),
|
site_group_id = TreeNodeMultipleChoiceFilter(
|
||||||
# field_name='site__group',
|
queryset=SiteGroup.objects.all(),
|
||||||
# lookup_expr='in',
|
field_name='_sitegroup',
|
||||||
# label=_('Site group (ID)'),
|
lookup_expr='in',
|
||||||
# )
|
label=_('Site group (ID)'),
|
||||||
# site_group = TreeNodeMultipleChoiceFilter(
|
)
|
||||||
# queryset=SiteGroup.objects.all(),
|
site_group = TreeNodeMultipleChoiceFilter(
|
||||||
# field_name='site__group',
|
queryset=SiteGroup.objects.all(),
|
||||||
# lookup_expr='in',
|
field_name='_sitegroup',
|
||||||
# to_field_name='slug',
|
lookup_expr='in',
|
||||||
# label=_('Site group (slug)'),
|
to_field_name='slug',
|
||||||
# )
|
label=_('Site group (slug)'),
|
||||||
# site_id = django_filters.ModelMultipleChoiceFilter(
|
)
|
||||||
# queryset=Site.objects.all(),
|
site_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
# label=_('Site (ID)'),
|
queryset=Site.objects.all(),
|
||||||
# )
|
field_name='_site',
|
||||||
# site = django_filters.ModelMultipleChoiceFilter(
|
label=_('Site (ID)'),
|
||||||
# field_name='site__slug',
|
)
|
||||||
# queryset=Site.objects.all(),
|
site = django_filters.ModelMultipleChoiceFilter(
|
||||||
# to_field_name='slug',
|
field_name='_site__slug',
|
||||||
# label=_('Site (slug)'),
|
queryset=Site.objects.all(),
|
||||||
# )
|
to_field_name='slug',
|
||||||
|
label=_('Site (slug)'),
|
||||||
|
)
|
||||||
|
location_id = TreeNodeMultipleChoiceFilter(
|
||||||
|
queryset=Location.objects.all(),
|
||||||
|
field_name='_location',
|
||||||
|
lookup_expr='in',
|
||||||
|
label=_('Location (ID)'),
|
||||||
|
)
|
||||||
|
location = TreeNodeMultipleChoiceFilter(
|
||||||
|
queryset=Location.objects.all(),
|
||||||
|
field_name='_location',
|
||||||
|
lookup_expr='in',
|
||||||
|
to_field_name='slug',
|
||||||
|
label=_('Location (slug)'),
|
||||||
|
)
|
||||||
group_id = django_filters.ModelMultipleChoiceFilter(
|
group_id = django_filters.ModelMultipleChoiceFilter(
|
||||||
queryset=ClusterGroup.objects.all(),
|
queryset=ClusterGroup.objects.all(),
|
||||||
label=_('Parent group (ID)'),
|
label=_('Parent group (ID)'),
|
||||||
|
Loading…
Reference in New Issue
Block a user