Rename FilterSet modules

This commit is contained in:
jeremystretch 2021-04-29 16:38:56 -04:00
parent d35ac1347c
commit 1024782b9e
31 changed files with 234 additions and 233 deletions

View File

@ -1,6 +1,6 @@
from rest_framework.routers import APIRootView from rest_framework.routers import APIRootView
from circuits import filters from circuits import filtersets
from circuits.models import * from circuits.models import *
from dcim.api.views import PassThroughPortMixin from dcim.api.views import PassThroughPortMixin
from extras.api.views import CustomFieldModelViewSet from extras.api.views import CustomFieldModelViewSet
@ -26,7 +26,7 @@ class ProviderViewSet(CustomFieldModelViewSet):
circuit_count=count_related(Circuit, 'provider') circuit_count=count_related(Circuit, 'provider')
) )
serializer_class = serializers.ProviderSerializer serializer_class = serializers.ProviderSerializer
filterset_class = filters.ProviderFilterSet filterset_class = filtersets.ProviderFilterSet
# #
@ -38,7 +38,7 @@ class CircuitTypeViewSet(CustomFieldModelViewSet):
circuit_count=count_related(Circuit, 'type') circuit_count=count_related(Circuit, 'type')
) )
serializer_class = serializers.CircuitTypeSerializer serializer_class = serializers.CircuitTypeSerializer
filterset_class = filters.CircuitTypeFilterSet filterset_class = filtersets.CircuitTypeFilterSet
# #
@ -50,7 +50,7 @@ class CircuitViewSet(CustomFieldModelViewSet):
'type', 'tenant', 'provider', 'termination_a', 'termination_z' 'type', 'tenant', 'provider', 'termination_a', 'termination_z'
).prefetch_related('tags') ).prefetch_related('tags')
serializer_class = serializers.CircuitSerializer serializer_class = serializers.CircuitSerializer
filterset_class = filters.CircuitFilterSet filterset_class = filtersets.CircuitFilterSet
# #
@ -62,7 +62,7 @@ class CircuitTerminationViewSet(PassThroughPortMixin, ModelViewSet):
'circuit', 'site', 'provider_network', 'cable' 'circuit', 'site', 'provider_network', 'cable'
) )
serializer_class = serializers.CircuitTerminationSerializer serializer_class = serializers.CircuitTerminationSerializer
filterset_class = filters.CircuitTerminationFilterSet filterset_class = filtersets.CircuitTerminationFilterSet
brief_prefetch_fields = ['circuit'] brief_prefetch_fields = ['circuit']
@ -73,4 +73,4 @@ class CircuitTerminationViewSet(PassThroughPortMixin, ModelViewSet):
class ProviderNetworkViewSet(CustomFieldModelViewSet): class ProviderNetworkViewSet(CustomFieldModelViewSet):
queryset = ProviderNetwork.objects.prefetch_related('tags') queryset = ProviderNetwork.objects.prefetch_related('tags')
serializer_class = serializers.ProviderNetworkSerializer serializer_class = serializers.ProviderNetworkSerializer
filterset_class = filters.ProviderNetworkFilterSet filterset_class = filtersets.ProviderNetworkFilterSet

View File

@ -1,10 +1,10 @@
import django_filters import django_filters
from django.db.models import Q from django.db.models import Q
from dcim.filters import CableTerminationFilterSet from dcim.filtersets import CableTerminationFilterSet
from dcim.models import Region, Site, SiteGroup from dcim.models import Region, Site, SiteGroup
from extras.filters import TagFilter from extras.filters import TagFilter
from tenancy.filters import TenancyFilterSet from tenancy.filtersets import TenancyFilterSet
from utilities.filters import TreeNodeMultipleChoiceFilter from utilities.filters import TreeNodeMultipleChoiceFilter
from utilities.filtersets import ChangeLoggedModelFilterSet, OrganizationalModelFilterSet, PrimaryModelFilterSet from utilities.filtersets import ChangeLoggedModelFilterSet, OrganizationalModelFilterSet, PrimaryModelFilterSet
from .choices import * from .choices import *

View File

@ -1,7 +1,7 @@
from django.test import TestCase from django.test import TestCase
from circuits.choices import * from circuits.choices import *
from circuits.filters import * from circuits.filtersets import *
from circuits.models import * from circuits.models import *
from dcim.models import Cable, Region, Site, SiteGroup from dcim.models import Cable, Region, Site, SiteGroup
from tenancy.models import Tenant, TenantGroup from tenancy.models import Tenant, TenantGroup

View File

@ -7,7 +7,7 @@ from netbox.views import generic
from utilities.forms import ConfirmationForm from utilities.forms import ConfirmationForm
from utilities.tables import paginate_table from utilities.tables import paginate_table
from utilities.utils import count_related from utilities.utils import count_related
from . import filters, forms, tables from . import filtersets, forms, tables
from .choices import CircuitTerminationSideChoices from .choices import CircuitTerminationSideChoices
from .models import * from .models import *
@ -20,7 +20,7 @@ class ProviderListView(generic.ObjectListView):
queryset = Provider.objects.annotate( queryset = Provider.objects.annotate(
count_circuits=count_related(Circuit, 'provider') count_circuits=count_related(Circuit, 'provider')
) )
filterset = filters.ProviderFilterSet filterset = filtersets.ProviderFilterSet
filterset_form = forms.ProviderFilterForm filterset_form = forms.ProviderFilterForm
table = tables.ProviderTable table = tables.ProviderTable
@ -63,7 +63,7 @@ class ProviderBulkEditView(generic.BulkEditView):
queryset = Provider.objects.annotate( queryset = Provider.objects.annotate(
count_circuits=count_related(Circuit, 'provider') count_circuits=count_related(Circuit, 'provider')
) )
filterset = filters.ProviderFilterSet filterset = filtersets.ProviderFilterSet
table = tables.ProviderTable table = tables.ProviderTable
form = forms.ProviderBulkEditForm form = forms.ProviderBulkEditForm
@ -72,7 +72,7 @@ class ProviderBulkDeleteView(generic.BulkDeleteView):
queryset = Provider.objects.annotate( queryset = Provider.objects.annotate(
count_circuits=count_related(Circuit, 'provider') count_circuits=count_related(Circuit, 'provider')
) )
filterset = filters.ProviderFilterSet filterset = filtersets.ProviderFilterSet
table = tables.ProviderTable table = tables.ProviderTable
@ -82,7 +82,7 @@ class ProviderBulkDeleteView(generic.BulkDeleteView):
class ProviderNetworkListView(generic.ObjectListView): class ProviderNetworkListView(generic.ObjectListView):
queryset = ProviderNetwork.objects.all() queryset = ProviderNetwork.objects.all()
filterset = filters.ProviderNetworkFilterSet filterset = filtersets.ProviderNetworkFilterSet
filterset_form = forms.ProviderNetworkFilterForm filterset_form = forms.ProviderNetworkFilterForm
table = tables.ProviderNetworkTable table = tables.ProviderNetworkTable
@ -125,14 +125,14 @@ class ProviderNetworkBulkImportView(generic.BulkImportView):
class ProviderNetworkBulkEditView(generic.BulkEditView): class ProviderNetworkBulkEditView(generic.BulkEditView):
queryset = ProviderNetwork.objects.all() queryset = ProviderNetwork.objects.all()
filterset = filters.ProviderNetworkFilterSet filterset = filtersets.ProviderNetworkFilterSet
table = tables.ProviderNetworkTable table = tables.ProviderNetworkTable
form = forms.ProviderNetworkBulkEditForm form = forms.ProviderNetworkBulkEditForm
class ProviderNetworkBulkDeleteView(generic.BulkDeleteView): class ProviderNetworkBulkDeleteView(generic.BulkDeleteView):
queryset = ProviderNetwork.objects.all() queryset = ProviderNetwork.objects.all()
filterset = filters.ProviderNetworkFilterSet filterset = filtersets.ProviderNetworkFilterSet
table = tables.ProviderNetworkTable table = tables.ProviderNetworkTable
@ -183,7 +183,7 @@ class CircuitTypeBulkEditView(generic.BulkEditView):
queryset = CircuitType.objects.annotate( queryset = CircuitType.objects.annotate(
circuit_count=count_related(Circuit, 'type') circuit_count=count_related(Circuit, 'type')
) )
filterset = filters.CircuitTypeFilterSet filterset = filtersets.CircuitTypeFilterSet
table = tables.CircuitTypeTable table = tables.CircuitTypeTable
form = forms.CircuitTypeBulkEditForm form = forms.CircuitTypeBulkEditForm
@ -203,7 +203,7 @@ class CircuitListView(generic.ObjectListView):
queryset = Circuit.objects.prefetch_related( queryset = Circuit.objects.prefetch_related(
'provider', 'type', 'tenant', 'termination_a', 'termination_z' 'provider', 'type', 'tenant', 'termination_a', 'termination_z'
) )
filterset = filters.CircuitFilterSet filterset = filtersets.CircuitFilterSet
filterset_form = forms.CircuitFilterForm filterset_form = forms.CircuitFilterForm
table = tables.CircuitTable table = tables.CircuitTable
@ -252,7 +252,7 @@ class CircuitBulkEditView(generic.BulkEditView):
queryset = Circuit.objects.prefetch_related( queryset = Circuit.objects.prefetch_related(
'provider', 'type', 'tenant', 'terminations' 'provider', 'type', 'tenant', 'terminations'
) )
filterset = filters.CircuitFilterSet filterset = filtersets.CircuitFilterSet
table = tables.CircuitTable table = tables.CircuitTable
form = forms.CircuitBulkEditForm form = forms.CircuitBulkEditForm
@ -261,7 +261,7 @@ class CircuitBulkDeleteView(generic.BulkDeleteView):
queryset = Circuit.objects.prefetch_related( queryset = Circuit.objects.prefetch_related(
'provider', 'type', 'tenant', 'terminations' 'provider', 'type', 'tenant', 'terminations'
) )
filterset = filters.CircuitFilterSet filterset = filtersets.CircuitFilterSet
table = tables.CircuitTable table = tables.CircuitTable

View File

@ -16,7 +16,7 @@ from rest_framework.routers import APIRootView
from rest_framework.viewsets import GenericViewSet, ViewSet from rest_framework.viewsets import GenericViewSet, ViewSet
from circuits.models import Circuit from circuits.models import Circuit
from dcim import filters from dcim import filtersets
from dcim.models import * from dcim.models import *
from extras.api.views import ConfigContextQuerySetMixin, CustomFieldModelViewSet from extras.api.views import ConfigContextQuerySetMixin, CustomFieldModelViewSet
from ipam.models import Prefix, VLAN from ipam.models import Prefix, VLAN
@ -103,7 +103,7 @@ class RegionViewSet(CustomFieldModelViewSet):
cumulative=True cumulative=True
) )
serializer_class = serializers.RegionSerializer serializer_class = serializers.RegionSerializer
filterset_class = filters.RegionFilterSet filterset_class = filtersets.RegionFilterSet
# #
@ -119,7 +119,7 @@ class SiteGroupViewSet(CustomFieldModelViewSet):
cumulative=True cumulative=True
) )
serializer_class = serializers.SiteGroupSerializer serializer_class = serializers.SiteGroupSerializer
filterset_class = filters.SiteGroupFilterSet filterset_class = filtersets.SiteGroupFilterSet
# #
@ -138,7 +138,7 @@ class SiteViewSet(CustomFieldModelViewSet):
virtualmachine_count=count_related(VirtualMachine, 'cluster__site') virtualmachine_count=count_related(VirtualMachine, 'cluster__site')
) )
serializer_class = serializers.SiteSerializer serializer_class = serializers.SiteSerializer
filterset_class = filters.SiteFilterSet filterset_class = filtersets.SiteFilterSet
# #
@ -160,7 +160,7 @@ class LocationViewSet(CustomFieldModelViewSet):
cumulative=True cumulative=True
).prefetch_related('site') ).prefetch_related('site')
serializer_class = serializers.LocationSerializer serializer_class = serializers.LocationSerializer
filterset_class = filters.LocationFilterSet filterset_class = filtersets.LocationFilterSet
# #
@ -172,7 +172,7 @@ class RackRoleViewSet(CustomFieldModelViewSet):
rack_count=count_related(Rack, 'role') rack_count=count_related(Rack, 'role')
) )
serializer_class = serializers.RackRoleSerializer serializer_class = serializers.RackRoleSerializer
filterset_class = filters.RackRoleFilterSet filterset_class = filtersets.RackRoleFilterSet
# #
@ -187,7 +187,7 @@ class RackViewSet(CustomFieldModelViewSet):
powerfeed_count=count_related(PowerFeed, 'rack') powerfeed_count=count_related(PowerFeed, 'rack')
) )
serializer_class = serializers.RackSerializer serializer_class = serializers.RackSerializer
filterset_class = filters.RackFilterSet filterset_class = filtersets.RackFilterSet
@swagger_auto_schema( @swagger_auto_schema(
responses={200: serializers.RackUnitSerializer(many=True)}, responses={200: serializers.RackUnitSerializer(many=True)},
@ -244,7 +244,7 @@ class RackViewSet(CustomFieldModelViewSet):
class RackReservationViewSet(ModelViewSet): class RackReservationViewSet(ModelViewSet):
queryset = RackReservation.objects.prefetch_related('rack', 'user', 'tenant') queryset = RackReservation.objects.prefetch_related('rack', 'user', 'tenant')
serializer_class = serializers.RackReservationSerializer serializer_class = serializers.RackReservationSerializer
filterset_class = filters.RackReservationFilterSet filterset_class = filtersets.RackReservationFilterSet
# Assign user from request # Assign user from request
def perform_create(self, serializer): def perform_create(self, serializer):
@ -262,7 +262,7 @@ class ManufacturerViewSet(CustomFieldModelViewSet):
platform_count=count_related(Platform, 'manufacturer') platform_count=count_related(Platform, 'manufacturer')
) )
serializer_class = serializers.ManufacturerSerializer serializer_class = serializers.ManufacturerSerializer
filterset_class = filters.ManufacturerFilterSet filterset_class = filtersets.ManufacturerFilterSet
# #
@ -274,7 +274,7 @@ class DeviceTypeViewSet(CustomFieldModelViewSet):
device_count=count_related(Device, 'device_type') device_count=count_related(Device, 'device_type')
) )
serializer_class = serializers.DeviceTypeSerializer serializer_class = serializers.DeviceTypeSerializer
filterset_class = filters.DeviceTypeFilterSet filterset_class = filtersets.DeviceTypeFilterSet
brief_prefetch_fields = ['manufacturer'] brief_prefetch_fields = ['manufacturer']
@ -285,49 +285,49 @@ class DeviceTypeViewSet(CustomFieldModelViewSet):
class ConsolePortTemplateViewSet(ModelViewSet): class ConsolePortTemplateViewSet(ModelViewSet):
queryset = ConsolePortTemplate.objects.prefetch_related('device_type__manufacturer') queryset = ConsolePortTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.ConsolePortTemplateSerializer serializer_class = serializers.ConsolePortTemplateSerializer
filterset_class = filters.ConsolePortTemplateFilterSet filterset_class = filtersets.ConsolePortTemplateFilterSet
class ConsoleServerPortTemplateViewSet(ModelViewSet): class ConsoleServerPortTemplateViewSet(ModelViewSet):
queryset = ConsoleServerPortTemplate.objects.prefetch_related('device_type__manufacturer') queryset = ConsoleServerPortTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.ConsoleServerPortTemplateSerializer serializer_class = serializers.ConsoleServerPortTemplateSerializer
filterset_class = filters.ConsoleServerPortTemplateFilterSet filterset_class = filtersets.ConsoleServerPortTemplateFilterSet
class PowerPortTemplateViewSet(ModelViewSet): class PowerPortTemplateViewSet(ModelViewSet):
queryset = PowerPortTemplate.objects.prefetch_related('device_type__manufacturer') queryset = PowerPortTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.PowerPortTemplateSerializer serializer_class = serializers.PowerPortTemplateSerializer
filterset_class = filters.PowerPortTemplateFilterSet filterset_class = filtersets.PowerPortTemplateFilterSet
class PowerOutletTemplateViewSet(ModelViewSet): class PowerOutletTemplateViewSet(ModelViewSet):
queryset = PowerOutletTemplate.objects.prefetch_related('device_type__manufacturer') queryset = PowerOutletTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.PowerOutletTemplateSerializer serializer_class = serializers.PowerOutletTemplateSerializer
filterset_class = filters.PowerOutletTemplateFilterSet filterset_class = filtersets.PowerOutletTemplateFilterSet
class InterfaceTemplateViewSet(ModelViewSet): class InterfaceTemplateViewSet(ModelViewSet):
queryset = InterfaceTemplate.objects.prefetch_related('device_type__manufacturer') queryset = InterfaceTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.InterfaceTemplateSerializer serializer_class = serializers.InterfaceTemplateSerializer
filterset_class = filters.InterfaceTemplateFilterSet filterset_class = filtersets.InterfaceTemplateFilterSet
class FrontPortTemplateViewSet(ModelViewSet): class FrontPortTemplateViewSet(ModelViewSet):
queryset = FrontPortTemplate.objects.prefetch_related('device_type__manufacturer') queryset = FrontPortTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.FrontPortTemplateSerializer serializer_class = serializers.FrontPortTemplateSerializer
filterset_class = filters.FrontPortTemplateFilterSet filterset_class = filtersets.FrontPortTemplateFilterSet
class RearPortTemplateViewSet(ModelViewSet): class RearPortTemplateViewSet(ModelViewSet):
queryset = RearPortTemplate.objects.prefetch_related('device_type__manufacturer') queryset = RearPortTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.RearPortTemplateSerializer serializer_class = serializers.RearPortTemplateSerializer
filterset_class = filters.RearPortTemplateFilterSet filterset_class = filtersets.RearPortTemplateFilterSet
class DeviceBayTemplateViewSet(ModelViewSet): class DeviceBayTemplateViewSet(ModelViewSet):
queryset = DeviceBayTemplate.objects.prefetch_related('device_type__manufacturer') queryset = DeviceBayTemplate.objects.prefetch_related('device_type__manufacturer')
serializer_class = serializers.DeviceBayTemplateSerializer serializer_class = serializers.DeviceBayTemplateSerializer
filterset_class = filters.DeviceBayTemplateFilterSet filterset_class = filtersets.DeviceBayTemplateFilterSet
# #
@ -340,7 +340,7 @@ class DeviceRoleViewSet(CustomFieldModelViewSet):
virtualmachine_count=count_related(VirtualMachine, 'role') virtualmachine_count=count_related(VirtualMachine, 'role')
) )
serializer_class = serializers.DeviceRoleSerializer serializer_class = serializers.DeviceRoleSerializer
filterset_class = filters.DeviceRoleFilterSet filterset_class = filtersets.DeviceRoleFilterSet
# #
@ -353,7 +353,7 @@ class PlatformViewSet(CustomFieldModelViewSet):
virtualmachine_count=count_related(VirtualMachine, 'platform') virtualmachine_count=count_related(VirtualMachine, 'platform')
) )
serializer_class = serializers.PlatformSerializer serializer_class = serializers.PlatformSerializer
filterset_class = filters.PlatformFilterSet filterset_class = filtersets.PlatformFilterSet
# #
@ -365,7 +365,7 @@ class DeviceViewSet(ConfigContextQuerySetMixin, CustomFieldModelViewSet):
'device_type__manufacturer', 'device_role', 'tenant', 'platform', 'site', 'location', 'rack', 'parent_bay', 'device_type__manufacturer', 'device_role', 'tenant', 'platform', 'site', 'location', 'rack', 'parent_bay',
'virtual_chassis__master', 'primary_ip4__nat_outside', 'primary_ip6__nat_outside', 'tags', 'virtual_chassis__master', 'primary_ip4__nat_outside', 'primary_ip6__nat_outside', 'tags',
) )
filterset_class = filters.DeviceFilterSet filterset_class = filtersets.DeviceFilterSet
def get_serializer_class(self): def get_serializer_class(self):
""" """
@ -510,7 +510,7 @@ class DeviceViewSet(ConfigContextQuerySetMixin, CustomFieldModelViewSet):
class ConsolePortViewSet(PathEndpointMixin, ModelViewSet): class ConsolePortViewSet(PathEndpointMixin, ModelViewSet):
queryset = ConsolePort.objects.prefetch_related('device', '_path__destination', 'cable', '_cable_peer', 'tags') queryset = ConsolePort.objects.prefetch_related('device', '_path__destination', 'cable', '_cable_peer', 'tags')
serializer_class = serializers.ConsolePortSerializer serializer_class = serializers.ConsolePortSerializer
filterset_class = filters.ConsolePortFilterSet filterset_class = filtersets.ConsolePortFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
@ -519,21 +519,21 @@ class ConsoleServerPortViewSet(PathEndpointMixin, ModelViewSet):
'device', '_path__destination', 'cable', '_cable_peer', 'tags' 'device', '_path__destination', 'cable', '_cable_peer', 'tags'
) )
serializer_class = serializers.ConsoleServerPortSerializer serializer_class = serializers.ConsoleServerPortSerializer
filterset_class = filters.ConsoleServerPortFilterSet filterset_class = filtersets.ConsoleServerPortFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
class PowerPortViewSet(PathEndpointMixin, ModelViewSet): class PowerPortViewSet(PathEndpointMixin, ModelViewSet):
queryset = PowerPort.objects.prefetch_related('device', '_path__destination', 'cable', '_cable_peer', 'tags') queryset = PowerPort.objects.prefetch_related('device', '_path__destination', 'cable', '_cable_peer', 'tags')
serializer_class = serializers.PowerPortSerializer serializer_class = serializers.PowerPortSerializer
filterset_class = filters.PowerPortFilterSet filterset_class = filtersets.PowerPortFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
class PowerOutletViewSet(PathEndpointMixin, ModelViewSet): class PowerOutletViewSet(PathEndpointMixin, ModelViewSet):
queryset = PowerOutlet.objects.prefetch_related('device', '_path__destination', 'cable', '_cable_peer', 'tags') queryset = PowerOutlet.objects.prefetch_related('device', '_path__destination', 'cable', '_cable_peer', 'tags')
serializer_class = serializers.PowerOutletSerializer serializer_class = serializers.PowerOutletSerializer
filterset_class = filters.PowerOutletFilterSet filterset_class = filtersets.PowerOutletFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
@ -542,35 +542,35 @@ class InterfaceViewSet(PathEndpointMixin, ModelViewSet):
'device', 'parent', 'lag', '_path__destination', 'cable', '_cable_peer', 'ip_addresses', 'tags' 'device', 'parent', 'lag', '_path__destination', 'cable', '_cable_peer', 'ip_addresses', 'tags'
) )
serializer_class = serializers.InterfaceSerializer serializer_class = serializers.InterfaceSerializer
filterset_class = filters.InterfaceFilterSet filterset_class = filtersets.InterfaceFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
class FrontPortViewSet(PassThroughPortMixin, ModelViewSet): class FrontPortViewSet(PassThroughPortMixin, ModelViewSet):
queryset = FrontPort.objects.prefetch_related('device__device_type__manufacturer', 'rear_port', 'cable', 'tags') queryset = FrontPort.objects.prefetch_related('device__device_type__manufacturer', 'rear_port', 'cable', 'tags')
serializer_class = serializers.FrontPortSerializer serializer_class = serializers.FrontPortSerializer
filterset_class = filters.FrontPortFilterSet filterset_class = filtersets.FrontPortFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
class RearPortViewSet(PassThroughPortMixin, ModelViewSet): class RearPortViewSet(PassThroughPortMixin, ModelViewSet):
queryset = RearPort.objects.prefetch_related('device__device_type__manufacturer', 'cable', 'tags') queryset = RearPort.objects.prefetch_related('device__device_type__manufacturer', 'cable', 'tags')
serializer_class = serializers.RearPortSerializer serializer_class = serializers.RearPortSerializer
filterset_class = filters.RearPortFilterSet filterset_class = filtersets.RearPortFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
class DeviceBayViewSet(ModelViewSet): class DeviceBayViewSet(ModelViewSet):
queryset = DeviceBay.objects.prefetch_related('installed_device').prefetch_related('tags') queryset = DeviceBay.objects.prefetch_related('installed_device').prefetch_related('tags')
serializer_class = serializers.DeviceBaySerializer serializer_class = serializers.DeviceBaySerializer
filterset_class = filters.DeviceBayFilterSet filterset_class = filtersets.DeviceBayFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
class InventoryItemViewSet(ModelViewSet): class InventoryItemViewSet(ModelViewSet):
queryset = InventoryItem.objects.prefetch_related('device', 'manufacturer').prefetch_related('tags') queryset = InventoryItem.objects.prefetch_related('device', 'manufacturer').prefetch_related('tags')
serializer_class = serializers.InventoryItemSerializer serializer_class = serializers.InventoryItemSerializer
filterset_class = filters.InventoryItemFilterSet filterset_class = filtersets.InventoryItemFilterSet
brief_prefetch_fields = ['device'] brief_prefetch_fields = ['device']
@ -583,7 +583,7 @@ class ConsoleConnectionViewSet(ListModelMixin, GenericViewSet):
_path__destination_id__isnull=False _path__destination_id__isnull=False
) )
serializer_class = serializers.ConsolePortSerializer serializer_class = serializers.ConsolePortSerializer
filterset_class = filters.ConsoleConnectionFilterSet filterset_class = filtersets.ConsoleConnectionFilterSet
class PowerConnectionViewSet(ListModelMixin, GenericViewSet): class PowerConnectionViewSet(ListModelMixin, GenericViewSet):
@ -591,7 +591,7 @@ class PowerConnectionViewSet(ListModelMixin, GenericViewSet):
_path__destination_id__isnull=False _path__destination_id__isnull=False
) )
serializer_class = serializers.PowerPortSerializer serializer_class = serializers.PowerPortSerializer
filterset_class = filters.PowerConnectionFilterSet filterset_class = filtersets.PowerConnectionFilterSet
class InterfaceConnectionViewSet(ListModelMixin, GenericViewSet): class InterfaceConnectionViewSet(ListModelMixin, GenericViewSet):
@ -603,7 +603,7 @@ class InterfaceConnectionViewSet(ListModelMixin, GenericViewSet):
pk__lt=F('_path__destination_id') pk__lt=F('_path__destination_id')
) )
serializer_class = serializers.InterfaceConnectionSerializer serializer_class = serializers.InterfaceConnectionSerializer
filterset_class = filters.InterfaceConnectionFilterSet filterset_class = filtersets.InterfaceConnectionFilterSet
# #
@ -616,7 +616,7 @@ class CableViewSet(ModelViewSet):
'termination_a', 'termination_b' 'termination_a', 'termination_b'
) )
serializer_class = serializers.CableSerializer serializer_class = serializers.CableSerializer
filterset_class = filters.CableFilterSet filterset_class = filtersets.CableFilterSet
# #
@ -628,7 +628,7 @@ class VirtualChassisViewSet(ModelViewSet):
member_count=count_related(Device, 'virtual_chassis') member_count=count_related(Device, 'virtual_chassis')
) )
serializer_class = serializers.VirtualChassisSerializer serializer_class = serializers.VirtualChassisSerializer
filterset_class = filters.VirtualChassisFilterSet filterset_class = filtersets.VirtualChassisFilterSet
brief_prefetch_fields = ['master'] brief_prefetch_fields = ['master']
@ -643,7 +643,7 @@ class PowerPanelViewSet(ModelViewSet):
powerfeed_count=count_related(PowerFeed, 'power_panel') powerfeed_count=count_related(PowerFeed, 'power_panel')
) )
serializer_class = serializers.PowerPanelSerializer serializer_class = serializers.PowerPanelSerializer
filterset_class = filters.PowerPanelFilterSet filterset_class = filtersets.PowerPanelFilterSet
# #
@ -655,7 +655,7 @@ class PowerFeedViewSet(PathEndpointMixin, CustomFieldModelViewSet):
'power_panel', 'rack', '_path__destination', 'cable', '_cable_peer', 'tags' 'power_panel', 'rack', '_path__destination', 'cable', '_cable_peer', 'tags'
) )
serializer_class = serializers.PowerFeedSerializer serializer_class = serializers.PowerFeedSerializer
filterset_class = filters.PowerFeedFilterSet filterset_class = filtersets.PowerFeedFilterSet
# #

View File

@ -3,7 +3,7 @@ from django.contrib.auth.models import User
from extras.filters import TagFilter from extras.filters import TagFilter
from extras.filtersets import LocalConfigContextFilterSet from extras.filtersets import LocalConfigContextFilterSet
from tenancy.filters import TenancyFilterSet from tenancy.filtersets import TenancyFilterSet
from tenancy.models import Tenant from tenancy.models import Tenant
from utilities.choices import ColorChoices from utilities.choices import ColorChoices
from utilities.filters import ( from utilities.filters import (

View File

@ -2,7 +2,7 @@ from django.contrib.auth.models import User
from django.test import TestCase from django.test import TestCase
from dcim.choices import * from dcim.choices import *
from dcim.filters import * from dcim.filtersets import *
from dcim.models import * from dcim.models import *
from ipam.models import IPAddress from ipam.models import IPAddress
from tenancy.models import Tenant, TenantGroup from tenancy.models import Tenant, TenantGroup

View File

@ -24,7 +24,7 @@ from utilities.tables import paginate_table
from utilities.utils import csv_format, count_related from utilities.utils import csv_format, count_related
from utilities.views import GetReturnURLMixin, ObjectPermissionRequiredMixin from utilities.views import GetReturnURLMixin, ObjectPermissionRequiredMixin
from virtualization.models import VirtualMachine from virtualization.models import VirtualMachine
from . import filters, forms, tables from . import filtersets, forms, tables
from .choices import DeviceFaceChoices from .choices import DeviceFaceChoices
from .constants import NONCONNECTABLE_IFACE_TYPES from .constants import NONCONNECTABLE_IFACE_TYPES
from .models import ( from .models import (
@ -107,7 +107,7 @@ class RegionListView(generic.ObjectListView):
'site_count', 'site_count',
cumulative=True cumulative=True
) )
filterset = filters.RegionFilterSet filterset = filtersets.RegionFilterSet
filterset_form = forms.RegionFilterForm filterset_form = forms.RegionFilterForm
table = tables.RegionTable table = tables.RegionTable
@ -163,7 +163,7 @@ class RegionBulkEditView(generic.BulkEditView):
'site_count', 'site_count',
cumulative=True cumulative=True
) )
filterset = filters.RegionFilterSet filterset = filtersets.RegionFilterSet
table = tables.RegionTable table = tables.RegionTable
form = forms.RegionBulkEditForm form = forms.RegionBulkEditForm
@ -176,7 +176,7 @@ class RegionBulkDeleteView(generic.BulkDeleteView):
'site_count', 'site_count',
cumulative=True cumulative=True
) )
filterset = filters.RegionFilterSet filterset = filtersets.RegionFilterSet
table = tables.RegionTable table = tables.RegionTable
@ -192,7 +192,7 @@ class SiteGroupListView(generic.ObjectListView):
'site_count', 'site_count',
cumulative=True cumulative=True
) )
filterset = filters.SiteGroupFilterSet filterset = filtersets.SiteGroupFilterSet
filterset_form = forms.SiteGroupFilterForm filterset_form = forms.SiteGroupFilterForm
table = tables.SiteGroupTable table = tables.SiteGroupTable
@ -248,7 +248,7 @@ class SiteGroupBulkEditView(generic.BulkEditView):
'site_count', 'site_count',
cumulative=True cumulative=True
) )
filterset = filters.SiteGroupFilterSet filterset = filtersets.SiteGroupFilterSet
table = tables.SiteGroupTable table = tables.SiteGroupTable
form = forms.SiteGroupBulkEditForm form = forms.SiteGroupBulkEditForm
@ -261,7 +261,7 @@ class SiteGroupBulkDeleteView(generic.BulkDeleteView):
'site_count', 'site_count',
cumulative=True cumulative=True
) )
filterset = filters.SiteGroupFilterSet filterset = filtersets.SiteGroupFilterSet
table = tables.SiteGroupTable table = tables.SiteGroupTable
@ -271,7 +271,7 @@ class SiteGroupBulkDeleteView(generic.BulkDeleteView):
class SiteListView(generic.ObjectListView): class SiteListView(generic.ObjectListView):
queryset = Site.objects.all() queryset = Site.objects.all()
filterset = filters.SiteFilterSet filterset = filtersets.SiteFilterSet
filterset_form = forms.SiteFilterForm filterset_form = forms.SiteFilterForm
table = tables.SiteTable table = tables.SiteTable
@ -326,14 +326,14 @@ class SiteBulkImportView(generic.BulkImportView):
class SiteBulkEditView(generic.BulkEditView): class SiteBulkEditView(generic.BulkEditView):
queryset = Site.objects.prefetch_related('region', 'tenant') queryset = Site.objects.prefetch_related('region', 'tenant')
filterset = filters.SiteFilterSet filterset = filtersets.SiteFilterSet
table = tables.SiteTable table = tables.SiteTable
form = forms.SiteBulkEditForm form = forms.SiteBulkEditForm
class SiteBulkDeleteView(generic.BulkDeleteView): class SiteBulkDeleteView(generic.BulkDeleteView):
queryset = Site.objects.prefetch_related('region', 'tenant') queryset = Site.objects.prefetch_related('region', 'tenant')
filterset = filters.SiteFilterSet filterset = filtersets.SiteFilterSet
table = tables.SiteTable table = tables.SiteTable
@ -355,7 +355,7 @@ class LocationListView(generic.ObjectListView):
'rack_count', 'rack_count',
cumulative=True cumulative=True
) )
filterset = filters.LocationFilterSet filterset = filtersets.LocationFilterSet
filterset_form = forms.LocationFilterForm filterset_form = forms.LocationFilterForm
table = tables.LocationTable table = tables.LocationTable
@ -414,7 +414,7 @@ class LocationBulkEditView(generic.BulkEditView):
'rack_count', 'rack_count',
cumulative=True cumulative=True
).prefetch_related('site') ).prefetch_related('site')
filterset = filters.LocationFilterSet filterset = filtersets.LocationFilterSet
table = tables.LocationTable table = tables.LocationTable
form = forms.LocationBulkEditForm form = forms.LocationBulkEditForm
@ -427,7 +427,7 @@ class LocationBulkDeleteView(generic.BulkDeleteView):
'rack_count', 'rack_count',
cumulative=True cumulative=True
).prefetch_related('site') ).prefetch_related('site')
filterset = filters.LocationFilterSet filterset = filtersets.LocationFilterSet
table = tables.LocationTable table = tables.LocationTable
@ -478,7 +478,7 @@ class RackRoleBulkEditView(generic.BulkEditView):
queryset = RackRole.objects.annotate( queryset = RackRole.objects.annotate(
rack_count=count_related(Rack, 'role') rack_count=count_related(Rack, 'role')
) )
filterset = filters.RackRoleFilterSet filterset = filtersets.RackRoleFilterSet
table = tables.RackRoleTable table = tables.RackRoleTable
form = forms.RackRoleBulkEditForm form = forms.RackRoleBulkEditForm
@ -500,7 +500,7 @@ class RackListView(generic.ObjectListView):
).annotate( ).annotate(
device_count=count_related(Device, 'rack') device_count=count_related(Device, 'rack')
) )
filterset = filters.RackFilterSet filterset = filtersets.RackFilterSet
filterset_form = forms.RackFilterForm filterset_form = forms.RackFilterForm
table = tables.RackDetailTable table = tables.RackDetailTable
@ -513,7 +513,7 @@ class RackElevationListView(generic.ObjectListView):
def get(self, request): def get(self, request):
racks = filters.RackFilterSet(request.GET, self.queryset).qs racks = filtersets.RackFilterSet(request.GET, self.queryset).qs
total_count = racks.count() total_count = racks.count()
# Determine ordering # Determine ordering
@ -602,14 +602,14 @@ class RackBulkImportView(generic.BulkImportView):
class RackBulkEditView(generic.BulkEditView): class RackBulkEditView(generic.BulkEditView):
queryset = Rack.objects.prefetch_related('site', 'location', 'tenant', 'role') queryset = Rack.objects.prefetch_related('site', 'location', 'tenant', 'role')
filterset = filters.RackFilterSet filterset = filtersets.RackFilterSet
table = tables.RackTable table = tables.RackTable
form = forms.RackBulkEditForm form = forms.RackBulkEditForm
class RackBulkDeleteView(generic.BulkDeleteView): class RackBulkDeleteView(generic.BulkDeleteView):
queryset = Rack.objects.prefetch_related('site', 'location', 'tenant', 'role') queryset = Rack.objects.prefetch_related('site', 'location', 'tenant', 'role')
filterset = filters.RackFilterSet filterset = filtersets.RackFilterSet
table = tables.RackTable table = tables.RackTable
@ -619,7 +619,7 @@ class RackBulkDeleteView(generic.BulkDeleteView):
class RackReservationListView(generic.ObjectListView): class RackReservationListView(generic.ObjectListView):
queryset = RackReservation.objects.all() queryset = RackReservation.objects.all()
filterset = filters.RackReservationFilterSet filterset = filtersets.RackReservationFilterSet
filterset_form = forms.RackReservationFilterForm filterset_form = forms.RackReservationFilterForm
table = tables.RackReservationTable table = tables.RackReservationTable
@ -662,14 +662,14 @@ class RackReservationImportView(generic.BulkImportView):
class RackReservationBulkEditView(generic.BulkEditView): class RackReservationBulkEditView(generic.BulkEditView):
queryset = RackReservation.objects.prefetch_related('rack', 'user') queryset = RackReservation.objects.prefetch_related('rack', 'user')
filterset = filters.RackReservationFilterSet filterset = filtersets.RackReservationFilterSet
table = tables.RackReservationTable table = tables.RackReservationTable
form = forms.RackReservationBulkEditForm form = forms.RackReservationBulkEditForm
class RackReservationBulkDeleteView(generic.BulkDeleteView): class RackReservationBulkDeleteView(generic.BulkDeleteView):
queryset = RackReservation.objects.prefetch_related('rack', 'user') queryset = RackReservation.objects.prefetch_related('rack', 'user')
filterset = filters.RackReservationFilterSet filterset = filtersets.RackReservationFilterSet
table = tables.RackReservationTable table = tables.RackReservationTable
@ -722,7 +722,7 @@ class ManufacturerBulkEditView(generic.BulkEditView):
queryset = Manufacturer.objects.annotate( queryset = Manufacturer.objects.annotate(
devicetype_count=count_related(DeviceType, 'manufacturer') devicetype_count=count_related(DeviceType, 'manufacturer')
) )
filterset = filters.ManufacturerFilterSet filterset = filtersets.ManufacturerFilterSet
table = tables.ManufacturerTable table = tables.ManufacturerTable
form = forms.ManufacturerBulkEditForm form = forms.ManufacturerBulkEditForm
@ -742,7 +742,7 @@ class DeviceTypeListView(generic.ObjectListView):
queryset = DeviceType.objects.prefetch_related('manufacturer').annotate( queryset = DeviceType.objects.prefetch_related('manufacturer').annotate(
instance_count=count_related(Device, 'device_type') instance_count=count_related(Device, 'device_type')
) )
filterset = filters.DeviceTypeFilterSet filterset = filtersets.DeviceTypeFilterSet
filterset_form = forms.DeviceTypeFilterForm filterset_form = forms.DeviceTypeFilterForm
table = tables.DeviceTypeTable table = tables.DeviceTypeTable
@ -848,7 +848,7 @@ class DeviceTypeBulkEditView(generic.BulkEditView):
queryset = DeviceType.objects.prefetch_related('manufacturer').annotate( queryset = DeviceType.objects.prefetch_related('manufacturer').annotate(
instance_count=count_related(Device, 'device_type') instance_count=count_related(Device, 'device_type')
) )
filterset = filters.DeviceTypeFilterSet filterset = filtersets.DeviceTypeFilterSet
table = tables.DeviceTypeTable table = tables.DeviceTypeTable
form = forms.DeviceTypeBulkEditForm form = forms.DeviceTypeBulkEditForm
@ -857,7 +857,7 @@ class DeviceTypeBulkDeleteView(generic.BulkDeleteView):
queryset = DeviceType.objects.prefetch_related('manufacturer').annotate( queryset = DeviceType.objects.prefetch_related('manufacturer').annotate(
instance_count=count_related(Device, 'device_type') instance_count=count_related(Device, 'device_type')
) )
filterset = filters.DeviceTypeFilterSet filterset = filtersets.DeviceTypeFilterSet
table = tables.DeviceTypeTable table = tables.DeviceTypeTable
@ -1190,7 +1190,7 @@ class DeviceRoleBulkEditView(generic.BulkEditView):
device_count=count_related(Device, 'device_role'), device_count=count_related(Device, 'device_role'),
vm_count=count_related(VirtualMachine, 'role') vm_count=count_related(VirtualMachine, 'role')
) )
filterset = filters.DeviceRoleFilterSet filterset = filtersets.DeviceRoleFilterSet
table = tables.DeviceRoleTable table = tables.DeviceRoleTable
form = forms.DeviceRoleBulkEditForm form = forms.DeviceRoleBulkEditForm
@ -1249,7 +1249,7 @@ class PlatformBulkImportView(generic.BulkImportView):
class PlatformBulkEditView(generic.BulkEditView): class PlatformBulkEditView(generic.BulkEditView):
queryset = Platform.objects.all() queryset = Platform.objects.all()
filterset = filters.PlatformFilterSet filterset = filtersets.PlatformFilterSet
table = tables.PlatformTable table = tables.PlatformTable
form = forms.PlatformBulkEditForm form = forms.PlatformBulkEditForm
@ -1265,7 +1265,7 @@ class PlatformBulkDeleteView(generic.BulkDeleteView):
class DeviceListView(generic.ObjectListView): class DeviceListView(generic.ObjectListView):
queryset = Device.objects.all() queryset = Device.objects.all()
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
filterset_form = forms.DeviceFilterForm filterset_form = forms.DeviceFilterForm
table = tables.DeviceTable table = tables.DeviceTable
template_name = 'dcim/device_list.html' template_name = 'dcim/device_list.html'
@ -1600,14 +1600,14 @@ class ChildDeviceBulkImportView(generic.BulkImportView):
class DeviceBulkEditView(generic.BulkEditView): class DeviceBulkEditView(generic.BulkEditView):
queryset = Device.objects.prefetch_related('tenant', 'site', 'rack', 'device_role', 'device_type__manufacturer') queryset = Device.objects.prefetch_related('tenant', 'site', 'rack', 'device_role', 'device_type__manufacturer')
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
form = forms.DeviceBulkEditForm form = forms.DeviceBulkEditForm
class DeviceBulkDeleteView(generic.BulkDeleteView): class DeviceBulkDeleteView(generic.BulkDeleteView):
queryset = Device.objects.prefetch_related('tenant', 'site', 'rack', 'device_role', 'device_type__manufacturer') queryset = Device.objects.prefetch_related('tenant', 'site', 'rack', 'device_role', 'device_type__manufacturer')
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
@ -1617,7 +1617,7 @@ class DeviceBulkDeleteView(generic.BulkDeleteView):
class ConsolePortListView(generic.ObjectListView): class ConsolePortListView(generic.ObjectListView):
queryset = ConsolePort.objects.all() queryset = ConsolePort.objects.all()
filterset = filters.ConsolePortFilterSet filterset = filtersets.ConsolePortFilterSet
filterset_form = forms.ConsolePortFilterForm filterset_form = forms.ConsolePortFilterForm
table = tables.ConsolePortTable table = tables.ConsolePortTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -1652,7 +1652,7 @@ class ConsolePortBulkImportView(generic.BulkImportView):
class ConsolePortBulkEditView(generic.BulkEditView): class ConsolePortBulkEditView(generic.BulkEditView):
queryset = ConsolePort.objects.all() queryset = ConsolePort.objects.all()
filterset = filters.ConsolePortFilterSet filterset = filtersets.ConsolePortFilterSet
table = tables.ConsolePortTable table = tables.ConsolePortTable
form = forms.ConsolePortBulkEditForm form = forms.ConsolePortBulkEditForm
@ -1667,7 +1667,7 @@ class ConsolePortBulkDisconnectView(BulkDisconnectView):
class ConsolePortBulkDeleteView(generic.BulkDeleteView): class ConsolePortBulkDeleteView(generic.BulkDeleteView):
queryset = ConsolePort.objects.all() queryset = ConsolePort.objects.all()
filterset = filters.ConsolePortFilterSet filterset = filtersets.ConsolePortFilterSet
table = tables.ConsolePortTable table = tables.ConsolePortTable
@ -1677,7 +1677,7 @@ class ConsolePortBulkDeleteView(generic.BulkDeleteView):
class ConsoleServerPortListView(generic.ObjectListView): class ConsoleServerPortListView(generic.ObjectListView):
queryset = ConsoleServerPort.objects.all() queryset = ConsoleServerPort.objects.all()
filterset = filters.ConsoleServerPortFilterSet filterset = filtersets.ConsoleServerPortFilterSet
filterset_form = forms.ConsoleServerPortFilterForm filterset_form = forms.ConsoleServerPortFilterForm
table = tables.ConsoleServerPortTable table = tables.ConsoleServerPortTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -1712,7 +1712,7 @@ class ConsoleServerPortBulkImportView(generic.BulkImportView):
class ConsoleServerPortBulkEditView(generic.BulkEditView): class ConsoleServerPortBulkEditView(generic.BulkEditView):
queryset = ConsoleServerPort.objects.all() queryset = ConsoleServerPort.objects.all()
filterset = filters.ConsoleServerPortFilterSet filterset = filtersets.ConsoleServerPortFilterSet
table = tables.ConsoleServerPortTable table = tables.ConsoleServerPortTable
form = forms.ConsoleServerPortBulkEditForm form = forms.ConsoleServerPortBulkEditForm
@ -1727,7 +1727,7 @@ class ConsoleServerPortBulkDisconnectView(BulkDisconnectView):
class ConsoleServerPortBulkDeleteView(generic.BulkDeleteView): class ConsoleServerPortBulkDeleteView(generic.BulkDeleteView):
queryset = ConsoleServerPort.objects.all() queryset = ConsoleServerPort.objects.all()
filterset = filters.ConsoleServerPortFilterSet filterset = filtersets.ConsoleServerPortFilterSet
table = tables.ConsoleServerPortTable table = tables.ConsoleServerPortTable
@ -1737,7 +1737,7 @@ class ConsoleServerPortBulkDeleteView(generic.BulkDeleteView):
class PowerPortListView(generic.ObjectListView): class PowerPortListView(generic.ObjectListView):
queryset = PowerPort.objects.all() queryset = PowerPort.objects.all()
filterset = filters.PowerPortFilterSet filterset = filtersets.PowerPortFilterSet
filterset_form = forms.PowerPortFilterForm filterset_form = forms.PowerPortFilterForm
table = tables.PowerPortTable table = tables.PowerPortTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -1772,7 +1772,7 @@ class PowerPortBulkImportView(generic.BulkImportView):
class PowerPortBulkEditView(generic.BulkEditView): class PowerPortBulkEditView(generic.BulkEditView):
queryset = PowerPort.objects.all() queryset = PowerPort.objects.all()
filterset = filters.PowerPortFilterSet filterset = filtersets.PowerPortFilterSet
table = tables.PowerPortTable table = tables.PowerPortTable
form = forms.PowerPortBulkEditForm form = forms.PowerPortBulkEditForm
@ -1787,7 +1787,7 @@ class PowerPortBulkDisconnectView(BulkDisconnectView):
class PowerPortBulkDeleteView(generic.BulkDeleteView): class PowerPortBulkDeleteView(generic.BulkDeleteView):
queryset = PowerPort.objects.all() queryset = PowerPort.objects.all()
filterset = filters.PowerPortFilterSet filterset = filtersets.PowerPortFilterSet
table = tables.PowerPortTable table = tables.PowerPortTable
@ -1797,7 +1797,7 @@ class PowerPortBulkDeleteView(generic.BulkDeleteView):
class PowerOutletListView(generic.ObjectListView): class PowerOutletListView(generic.ObjectListView):
queryset = PowerOutlet.objects.all() queryset = PowerOutlet.objects.all()
filterset = filters.PowerOutletFilterSet filterset = filtersets.PowerOutletFilterSet
filterset_form = forms.PowerOutletFilterForm filterset_form = forms.PowerOutletFilterForm
table = tables.PowerOutletTable table = tables.PowerOutletTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -1832,7 +1832,7 @@ class PowerOutletBulkImportView(generic.BulkImportView):
class PowerOutletBulkEditView(generic.BulkEditView): class PowerOutletBulkEditView(generic.BulkEditView):
queryset = PowerOutlet.objects.all() queryset = PowerOutlet.objects.all()
filterset = filters.PowerOutletFilterSet filterset = filtersets.PowerOutletFilterSet
table = tables.PowerOutletTable table = tables.PowerOutletTable
form = forms.PowerOutletBulkEditForm form = forms.PowerOutletBulkEditForm
@ -1847,7 +1847,7 @@ class PowerOutletBulkDisconnectView(BulkDisconnectView):
class PowerOutletBulkDeleteView(generic.BulkDeleteView): class PowerOutletBulkDeleteView(generic.BulkDeleteView):
queryset = PowerOutlet.objects.all() queryset = PowerOutlet.objects.all()
filterset = filters.PowerOutletFilterSet filterset = filtersets.PowerOutletFilterSet
table = tables.PowerOutletTable table = tables.PowerOutletTable
@ -1857,7 +1857,7 @@ class PowerOutletBulkDeleteView(generic.BulkDeleteView):
class InterfaceListView(generic.ObjectListView): class InterfaceListView(generic.ObjectListView):
queryset = Interface.objects.all() queryset = Interface.objects.all()
filterset = filters.InterfaceFilterSet filterset = filtersets.InterfaceFilterSet
filterset_form = forms.InterfaceFilterForm filterset_form = forms.InterfaceFilterForm
table = tables.InterfaceTable table = tables.InterfaceTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -1927,7 +1927,7 @@ class InterfaceBulkImportView(generic.BulkImportView):
class InterfaceBulkEditView(generic.BulkEditView): class InterfaceBulkEditView(generic.BulkEditView):
queryset = Interface.objects.all() queryset = Interface.objects.all()
filterset = filters.InterfaceFilterSet filterset = filtersets.InterfaceFilterSet
table = tables.InterfaceTable table = tables.InterfaceTable
form = forms.InterfaceBulkEditForm form = forms.InterfaceBulkEditForm
@ -1942,7 +1942,7 @@ class InterfaceBulkDisconnectView(BulkDisconnectView):
class InterfaceBulkDeleteView(generic.BulkDeleteView): class InterfaceBulkDeleteView(generic.BulkDeleteView):
queryset = Interface.objects.all() queryset = Interface.objects.all()
filterset = filters.InterfaceFilterSet filterset = filtersets.InterfaceFilterSet
table = tables.InterfaceTable table = tables.InterfaceTable
@ -1952,7 +1952,7 @@ class InterfaceBulkDeleteView(generic.BulkDeleteView):
class FrontPortListView(generic.ObjectListView): class FrontPortListView(generic.ObjectListView):
queryset = FrontPort.objects.all() queryset = FrontPort.objects.all()
filterset = filters.FrontPortFilterSet filterset = filtersets.FrontPortFilterSet
filterset_form = forms.FrontPortFilterForm filterset_form = forms.FrontPortFilterForm
table = tables.FrontPortTable table = tables.FrontPortTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -1987,7 +1987,7 @@ class FrontPortBulkImportView(generic.BulkImportView):
class FrontPortBulkEditView(generic.BulkEditView): class FrontPortBulkEditView(generic.BulkEditView):
queryset = FrontPort.objects.all() queryset = FrontPort.objects.all()
filterset = filters.FrontPortFilterSet filterset = filtersets.FrontPortFilterSet
table = tables.FrontPortTable table = tables.FrontPortTable
form = forms.FrontPortBulkEditForm form = forms.FrontPortBulkEditForm
@ -2002,7 +2002,7 @@ class FrontPortBulkDisconnectView(BulkDisconnectView):
class FrontPortBulkDeleteView(generic.BulkDeleteView): class FrontPortBulkDeleteView(generic.BulkDeleteView):
queryset = FrontPort.objects.all() queryset = FrontPort.objects.all()
filterset = filters.FrontPortFilterSet filterset = filtersets.FrontPortFilterSet
table = tables.FrontPortTable table = tables.FrontPortTable
@ -2012,7 +2012,7 @@ class FrontPortBulkDeleteView(generic.BulkDeleteView):
class RearPortListView(generic.ObjectListView): class RearPortListView(generic.ObjectListView):
queryset = RearPort.objects.all() queryset = RearPort.objects.all()
filterset = filters.RearPortFilterSet filterset = filtersets.RearPortFilterSet
filterset_form = forms.RearPortFilterForm filterset_form = forms.RearPortFilterForm
table = tables.RearPortTable table = tables.RearPortTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -2047,7 +2047,7 @@ class RearPortBulkImportView(generic.BulkImportView):
class RearPortBulkEditView(generic.BulkEditView): class RearPortBulkEditView(generic.BulkEditView):
queryset = RearPort.objects.all() queryset = RearPort.objects.all()
filterset = filters.RearPortFilterSet filterset = filtersets.RearPortFilterSet
table = tables.RearPortTable table = tables.RearPortTable
form = forms.RearPortBulkEditForm form = forms.RearPortBulkEditForm
@ -2062,7 +2062,7 @@ class RearPortBulkDisconnectView(BulkDisconnectView):
class RearPortBulkDeleteView(generic.BulkDeleteView): class RearPortBulkDeleteView(generic.BulkDeleteView):
queryset = RearPort.objects.all() queryset = RearPort.objects.all()
filterset = filters.RearPortFilterSet filterset = filtersets.RearPortFilterSet
table = tables.RearPortTable table = tables.RearPortTable
@ -2072,7 +2072,7 @@ class RearPortBulkDeleteView(generic.BulkDeleteView):
class DeviceBayListView(generic.ObjectListView): class DeviceBayListView(generic.ObjectListView):
queryset = DeviceBay.objects.all() queryset = DeviceBay.objects.all()
filterset = filters.DeviceBayFilterSet filterset = filtersets.DeviceBayFilterSet
filterset_form = forms.DeviceBayFilterForm filterset_form = forms.DeviceBayFilterForm
table = tables.DeviceBayTable table = tables.DeviceBayTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -2172,7 +2172,7 @@ class DeviceBayBulkImportView(generic.BulkImportView):
class DeviceBayBulkEditView(generic.BulkEditView): class DeviceBayBulkEditView(generic.BulkEditView):
queryset = DeviceBay.objects.all() queryset = DeviceBay.objects.all()
filterset = filters.DeviceBayFilterSet filterset = filtersets.DeviceBayFilterSet
table = tables.DeviceBayTable table = tables.DeviceBayTable
form = forms.DeviceBayBulkEditForm form = forms.DeviceBayBulkEditForm
@ -2183,7 +2183,7 @@ class DeviceBayBulkRenameView(generic.BulkRenameView):
class DeviceBayBulkDeleteView(generic.BulkDeleteView): class DeviceBayBulkDeleteView(generic.BulkDeleteView):
queryset = DeviceBay.objects.all() queryset = DeviceBay.objects.all()
filterset = filters.DeviceBayFilterSet filterset = filtersets.DeviceBayFilterSet
table = tables.DeviceBayTable table = tables.DeviceBayTable
@ -2193,7 +2193,7 @@ class DeviceBayBulkDeleteView(generic.BulkDeleteView):
class InventoryItemListView(generic.ObjectListView): class InventoryItemListView(generic.ObjectListView):
queryset = InventoryItem.objects.all() queryset = InventoryItem.objects.all()
filterset = filters.InventoryItemFilterSet filterset = filtersets.InventoryItemFilterSet
filterset_form = forms.InventoryItemFilterForm filterset_form = forms.InventoryItemFilterForm
table = tables.InventoryItemTable table = tables.InventoryItemTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -2227,7 +2227,7 @@ class InventoryItemBulkImportView(generic.BulkImportView):
class InventoryItemBulkEditView(generic.BulkEditView): class InventoryItemBulkEditView(generic.BulkEditView):
queryset = InventoryItem.objects.prefetch_related('device', 'manufacturer') queryset = InventoryItem.objects.prefetch_related('device', 'manufacturer')
filterset = filters.InventoryItemFilterSet filterset = filtersets.InventoryItemFilterSet
table = tables.InventoryItemTable table = tables.InventoryItemTable
form = forms.InventoryItemBulkEditForm form = forms.InventoryItemBulkEditForm
@ -2252,7 +2252,7 @@ class DeviceBulkAddConsolePortView(generic.BulkComponentCreateView):
form = forms.ConsolePortBulkCreateForm form = forms.ConsolePortBulkCreateForm
queryset = ConsolePort.objects.all() queryset = ConsolePort.objects.all()
model_form = forms.ConsolePortForm model_form = forms.ConsolePortForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2263,7 +2263,7 @@ class DeviceBulkAddConsoleServerPortView(generic.BulkComponentCreateView):
form = forms.ConsoleServerPortBulkCreateForm form = forms.ConsoleServerPortBulkCreateForm
queryset = ConsoleServerPort.objects.all() queryset = ConsoleServerPort.objects.all()
model_form = forms.ConsoleServerPortForm model_form = forms.ConsoleServerPortForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2274,7 +2274,7 @@ class DeviceBulkAddPowerPortView(generic.BulkComponentCreateView):
form = forms.PowerPortBulkCreateForm form = forms.PowerPortBulkCreateForm
queryset = PowerPort.objects.all() queryset = PowerPort.objects.all()
model_form = forms.PowerPortForm model_form = forms.PowerPortForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2285,7 +2285,7 @@ class DeviceBulkAddPowerOutletView(generic.BulkComponentCreateView):
form = forms.PowerOutletBulkCreateForm form = forms.PowerOutletBulkCreateForm
queryset = PowerOutlet.objects.all() queryset = PowerOutlet.objects.all()
model_form = forms.PowerOutletForm model_form = forms.PowerOutletForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2296,7 +2296,7 @@ class DeviceBulkAddInterfaceView(generic.BulkComponentCreateView):
form = forms.InterfaceBulkCreateForm form = forms.InterfaceBulkCreateForm
queryset = Interface.objects.all() queryset = Interface.objects.all()
model_form = forms.InterfaceForm model_form = forms.InterfaceForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2307,7 +2307,7 @@ class DeviceBulkAddInterfaceView(generic.BulkComponentCreateView):
# form = forms.FrontPortBulkCreateForm # form = forms.FrontPortBulkCreateForm
# queryset = FrontPort.objects.all() # queryset = FrontPort.objects.all()
# model_form = forms.FrontPortForm # model_form = forms.FrontPortForm
# filterset = filters.DeviceFilterSet # filterset = filtersets.DeviceFilterSet
# table = tables.DeviceTable # table = tables.DeviceTable
# default_return_url = 'dcim:device_list' # default_return_url = 'dcim:device_list'
@ -2318,7 +2318,7 @@ class DeviceBulkAddRearPortView(generic.BulkComponentCreateView):
form = forms.RearPortBulkCreateForm form = forms.RearPortBulkCreateForm
queryset = RearPort.objects.all() queryset = RearPort.objects.all()
model_form = forms.RearPortForm model_form = forms.RearPortForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2329,7 +2329,7 @@ class DeviceBulkAddDeviceBayView(generic.BulkComponentCreateView):
form = forms.DeviceBayBulkCreateForm form = forms.DeviceBayBulkCreateForm
queryset = DeviceBay.objects.all() queryset = DeviceBay.objects.all()
model_form = forms.DeviceBayForm model_form = forms.DeviceBayForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2340,7 +2340,7 @@ class DeviceBulkAddInventoryItemView(generic.BulkComponentCreateView):
form = forms.InventoryItemBulkCreateForm form = forms.InventoryItemBulkCreateForm
queryset = InventoryItem.objects.all() queryset = InventoryItem.objects.all()
model_form = forms.InventoryItemForm model_form = forms.InventoryItemForm
filterset = filters.DeviceFilterSet filterset = filtersets.DeviceFilterSet
table = tables.DeviceTable table = tables.DeviceTable
default_return_url = 'dcim:device_list' default_return_url = 'dcim:device_list'
@ -2351,7 +2351,7 @@ class DeviceBulkAddInventoryItemView(generic.BulkComponentCreateView):
class CableListView(generic.ObjectListView): class CableListView(generic.ObjectListView):
queryset = Cable.objects.all() queryset = Cable.objects.all()
filterset = filters.CableFilterSet filterset = filtersets.CableFilterSet
filterset_form = forms.CableFilterForm filterset_form = forms.CableFilterForm
table = tables.CableTable table = tables.CableTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -2484,14 +2484,14 @@ class CableBulkImportView(generic.BulkImportView):
class CableBulkEditView(generic.BulkEditView): class CableBulkEditView(generic.BulkEditView):
queryset = Cable.objects.prefetch_related('termination_a', 'termination_b') queryset = Cable.objects.prefetch_related('termination_a', 'termination_b')
filterset = filters.CableFilterSet filterset = filtersets.CableFilterSet
table = tables.CableTable table = tables.CableTable
form = forms.CableBulkEditForm form = forms.CableBulkEditForm
class CableBulkDeleteView(generic.BulkDeleteView): class CableBulkDeleteView(generic.BulkDeleteView):
queryset = Cable.objects.prefetch_related('termination_a', 'termination_b') queryset = Cable.objects.prefetch_related('termination_a', 'termination_b')
filterset = filters.CableFilterSet filterset = filtersets.CableFilterSet
table = tables.CableTable table = tables.CableTable
@ -2501,7 +2501,7 @@ class CableBulkDeleteView(generic.BulkDeleteView):
class ConsoleConnectionsListView(generic.ObjectListView): class ConsoleConnectionsListView(generic.ObjectListView):
queryset = ConsolePort.objects.filter(_path__isnull=False).order_by('device') queryset = ConsolePort.objects.filter(_path__isnull=False).order_by('device')
filterset = filters.ConsoleConnectionFilterSet filterset = filtersets.ConsoleConnectionFilterSet
filterset_form = forms.ConsoleConnectionFilterForm filterset_form = forms.ConsoleConnectionFilterForm
table = tables.ConsoleConnectionTable table = tables.ConsoleConnectionTable
template_name = 'dcim/connections_list.html' template_name = 'dcim/connections_list.html'
@ -2531,7 +2531,7 @@ class ConsoleConnectionsListView(generic.ObjectListView):
class PowerConnectionsListView(generic.ObjectListView): class PowerConnectionsListView(generic.ObjectListView):
queryset = PowerPort.objects.filter(_path__isnull=False).order_by('device') queryset = PowerPort.objects.filter(_path__isnull=False).order_by('device')
filterset = filters.PowerConnectionFilterSet filterset = filtersets.PowerConnectionFilterSet
filterset_form = forms.PowerConnectionFilterForm filterset_form = forms.PowerConnectionFilterForm
table = tables.PowerConnectionTable table = tables.PowerConnectionTable
template_name = 'dcim/connections_list.html' template_name = 'dcim/connections_list.html'
@ -2565,7 +2565,7 @@ class InterfaceConnectionsListView(generic.ObjectListView):
_path__isnull=False, _path__isnull=False,
pk__lt=F('_path__destination_id') pk__lt=F('_path__destination_id')
).order_by('device') ).order_by('device')
filterset = filters.InterfaceConnectionFilterSet filterset = filtersets.InterfaceConnectionFilterSet
filterset_form = forms.InterfaceConnectionFilterForm filterset_form = forms.InterfaceConnectionFilterForm
table = tables.InterfaceConnectionTable table = tables.InterfaceConnectionTable
template_name = 'dcim/connections_list.html' template_name = 'dcim/connections_list.html'
@ -2604,7 +2604,7 @@ class VirtualChassisListView(generic.ObjectListView):
member_count=count_related(Device, 'virtual_chassis') member_count=count_related(Device, 'virtual_chassis')
) )
table = tables.VirtualChassisTable table = tables.VirtualChassisTable
filterset = filters.VirtualChassisFilterSet filterset = filtersets.VirtualChassisFilterSet
filterset_form = forms.VirtualChassisFilterForm filterset_form = forms.VirtualChassisFilterForm
@ -2812,14 +2812,14 @@ class VirtualChassisBulkImportView(generic.BulkImportView):
class VirtualChassisBulkEditView(generic.BulkEditView): class VirtualChassisBulkEditView(generic.BulkEditView):
queryset = VirtualChassis.objects.all() queryset = VirtualChassis.objects.all()
filterset = filters.VirtualChassisFilterSet filterset = filtersets.VirtualChassisFilterSet
table = tables.VirtualChassisTable table = tables.VirtualChassisTable
form = forms.VirtualChassisBulkEditForm form = forms.VirtualChassisBulkEditForm
class VirtualChassisBulkDeleteView(generic.BulkDeleteView): class VirtualChassisBulkDeleteView(generic.BulkDeleteView):
queryset = VirtualChassis.objects.all() queryset = VirtualChassis.objects.all()
filterset = filters.VirtualChassisFilterSet filterset = filtersets.VirtualChassisFilterSet
table = tables.VirtualChassisTable table = tables.VirtualChassisTable
@ -2833,7 +2833,7 @@ class PowerPanelListView(generic.ObjectListView):
).annotate( ).annotate(
powerfeed_count=count_related(PowerFeed, 'power_panel') powerfeed_count=count_related(PowerFeed, 'power_panel')
) )
filterset = filters.PowerPanelFilterSet filterset = filtersets.PowerPanelFilterSet
filterset_form = forms.PowerPanelFilterForm filterset_form = forms.PowerPanelFilterForm
table = tables.PowerPanelTable table = tables.PowerPanelTable
@ -2873,7 +2873,7 @@ class PowerPanelBulkImportView(generic.BulkImportView):
class PowerPanelBulkEditView(generic.BulkEditView): class PowerPanelBulkEditView(generic.BulkEditView):
queryset = PowerPanel.objects.prefetch_related('site', 'location') queryset = PowerPanel.objects.prefetch_related('site', 'location')
filterset = filters.PowerPanelFilterSet filterset = filtersets.PowerPanelFilterSet
table = tables.PowerPanelTable table = tables.PowerPanelTable
form = forms.PowerPanelBulkEditForm form = forms.PowerPanelBulkEditForm
@ -2884,7 +2884,7 @@ class PowerPanelBulkDeleteView(generic.BulkDeleteView):
).annotate( ).annotate(
powerfeed_count=count_related(PowerFeed, 'power_panel') powerfeed_count=count_related(PowerFeed, 'power_panel')
) )
filterset = filters.PowerPanelFilterSet filterset = filtersets.PowerPanelFilterSet
table = tables.PowerPanelTable table = tables.PowerPanelTable
@ -2894,7 +2894,7 @@ class PowerPanelBulkDeleteView(generic.BulkDeleteView):
class PowerFeedListView(generic.ObjectListView): class PowerFeedListView(generic.ObjectListView):
queryset = PowerFeed.objects.all() queryset = PowerFeed.objects.all()
filterset = filters.PowerFeedFilterSet filterset = filtersets.PowerFeedFilterSet
filterset_form = forms.PowerFeedFilterForm filterset_form = forms.PowerFeedFilterForm
table = tables.PowerFeedTable table = tables.PowerFeedTable
@ -2920,7 +2920,7 @@ class PowerFeedBulkImportView(generic.BulkImportView):
class PowerFeedBulkEditView(generic.BulkEditView): class PowerFeedBulkEditView(generic.BulkEditView):
queryset = PowerFeed.objects.prefetch_related('power_panel', 'rack') queryset = PowerFeed.objects.prefetch_related('power_panel', 'rack')
filterset = filters.PowerFeedFilterSet filterset = filtersets.PowerFeedFilterSet
table = tables.PowerFeedTable table = tables.PowerFeedTable
form = forms.PowerFeedBulkEditForm form = forms.PowerFeedBulkEditForm
@ -2931,5 +2931,5 @@ class PowerFeedBulkDisconnectView(BulkDisconnectView):
class PowerFeedBulkDeleteView(generic.BulkDeleteView): class PowerFeedBulkDeleteView(generic.BulkDeleteView):
queryset = PowerFeed.objects.prefetch_related('power_panel', 'rack') queryset = PowerFeed.objects.prefetch_related('power_panel', 'rack')
filterset = filters.PowerFeedFilterSet filterset = filtersets.PowerFeedFilterSet
table = tables.PowerFeedTable table = tables.PowerFeedTable

View File

@ -6,6 +6,7 @@ from .choices import *
__all__ = ( __all__ = (
'CustomFieldFilter', 'CustomFieldFilter',
'TagFilter',
) )
EXACT_FILTER_TYPES = ( EXACT_FILTER_TYPES = (

View File

@ -3,7 +3,7 @@ from django.core.exceptions import ValidationError
from django.urls import reverse from django.urls import reverse
from rest_framework import status from rest_framework import status
from dcim.filters import SiteFilterSet from dcim.filtersets import SiteFilterSet
from dcim.forms import SiteCSVForm from dcim.forms import SiteCSVForm
from dcim.models import Site, Rack from dcim.models import Site, Rack
from extras.choices import * from extras.choices import *

View File

@ -10,7 +10,7 @@ from rest_framework.response import Response
from rest_framework.routers import APIRootView from rest_framework.routers import APIRootView
from extras.api.views import CustomFieldModelViewSet from extras.api.views import CustomFieldModelViewSet
from ipam import filters from ipam import filtersets
from ipam.models import Aggregate, IPAddress, Prefix, RIR, Role, RouteTarget, Service, VLAN, VLANGroup, VRF from ipam.models import Aggregate, IPAddress, Prefix, RIR, Role, RouteTarget, Service, VLAN, VLANGroup, VRF
from netbox.api.views import ModelViewSet from netbox.api.views import ModelViewSet
from utilities.constants import ADVISORY_LOCK_KEYS from utilities.constants import ADVISORY_LOCK_KEYS
@ -38,7 +38,7 @@ class VRFViewSet(CustomFieldModelViewSet):
prefix_count=count_related(Prefix, 'vrf') prefix_count=count_related(Prefix, 'vrf')
) )
serializer_class = serializers.VRFSerializer serializer_class = serializers.VRFSerializer
filterset_class = filters.VRFFilterSet filterset_class = filtersets.VRFFilterSet
# #
@ -48,7 +48,7 @@ class VRFViewSet(CustomFieldModelViewSet):
class RouteTargetViewSet(CustomFieldModelViewSet): class RouteTargetViewSet(CustomFieldModelViewSet):
queryset = RouteTarget.objects.prefetch_related('tenant').prefetch_related('tags') queryset = RouteTarget.objects.prefetch_related('tenant').prefetch_related('tags')
serializer_class = serializers.RouteTargetSerializer serializer_class = serializers.RouteTargetSerializer
filterset_class = filters.RouteTargetFilterSet filterset_class = filtersets.RouteTargetFilterSet
# #
@ -60,7 +60,7 @@ class RIRViewSet(CustomFieldModelViewSet):
aggregate_count=count_related(Aggregate, 'rir') aggregate_count=count_related(Aggregate, 'rir')
) )
serializer_class = serializers.RIRSerializer serializer_class = serializers.RIRSerializer
filterset_class = filters.RIRFilterSet filterset_class = filtersets.RIRFilterSet
# #
@ -70,7 +70,7 @@ class RIRViewSet(CustomFieldModelViewSet):
class AggregateViewSet(CustomFieldModelViewSet): class AggregateViewSet(CustomFieldModelViewSet):
queryset = Aggregate.objects.prefetch_related('rir').prefetch_related('tags') queryset = Aggregate.objects.prefetch_related('rir').prefetch_related('tags')
serializer_class = serializers.AggregateSerializer serializer_class = serializers.AggregateSerializer
filterset_class = filters.AggregateFilterSet filterset_class = filtersets.AggregateFilterSet
# #
@ -83,7 +83,7 @@ class RoleViewSet(CustomFieldModelViewSet):
vlan_count=count_related(VLAN, 'role') vlan_count=count_related(VLAN, 'role')
) )
serializer_class = serializers.RoleSerializer serializer_class = serializers.RoleSerializer
filterset_class = filters.RoleFilterSet filterset_class = filtersets.RoleFilterSet
# #
@ -95,7 +95,7 @@ class PrefixViewSet(CustomFieldModelViewSet):
'site', 'vrf__tenant', 'tenant', 'vlan', 'role', 'tags' 'site', 'vrf__tenant', 'tenant', 'vlan', 'role', 'tags'
) )
serializer_class = serializers.PrefixSerializer serializer_class = serializers.PrefixSerializer
filterset_class = filters.PrefixFilterSet filterset_class = filtersets.PrefixFilterSet
def get_serializer_class(self): def get_serializer_class(self):
if self.action == "available_prefixes" and self.request.method == "POST": if self.action == "available_prefixes" and self.request.method == "POST":
@ -275,7 +275,7 @@ class IPAddressViewSet(CustomFieldModelViewSet):
'vrf__tenant', 'tenant', 'nat_inside', 'nat_outside', 'tags', 'assigned_object' 'vrf__tenant', 'tenant', 'nat_inside', 'nat_outside', 'tags', 'assigned_object'
) )
serializer_class = serializers.IPAddressSerializer serializer_class = serializers.IPAddressSerializer
filterset_class = filters.IPAddressFilterSet filterset_class = filtersets.IPAddressFilterSet
# #
@ -287,7 +287,7 @@ class VLANGroupViewSet(CustomFieldModelViewSet):
vlan_count=count_related(VLAN, 'group') vlan_count=count_related(VLAN, 'group')
) )
serializer_class = serializers.VLANGroupSerializer serializer_class = serializers.VLANGroupSerializer
filterset_class = filters.VLANGroupFilterSet filterset_class = filtersets.VLANGroupFilterSet
# #
@ -301,7 +301,7 @@ class VLANViewSet(CustomFieldModelViewSet):
prefix_count=count_related(Prefix, 'vlan') prefix_count=count_related(Prefix, 'vlan')
) )
serializer_class = serializers.VLANSerializer serializer_class = serializers.VLANSerializer
filterset_class = filters.VLANFilterSet filterset_class = filtersets.VLANFilterSet
# #
@ -313,4 +313,4 @@ class ServiceViewSet(ModelViewSet):
'device', 'virtual_machine', 'tags', 'ipaddresses' 'device', 'virtual_machine', 'tags', 'ipaddresses'
) )
serializer_class = serializers.ServiceSerializer serializer_class = serializers.ServiceSerializer
filterset_class = filters.ServiceFilterSet filterset_class = filtersets.ServiceFilterSet

View File

@ -7,7 +7,7 @@ from netaddr.core import AddrFormatError
from dcim.models import Device, Interface, Region, Site, SiteGroup from dcim.models import Device, Interface, Region, Site, SiteGroup
from extras.filters import TagFilter from extras.filters import TagFilter
from tenancy.filters import TenancyFilterSet from tenancy.filtersets import TenancyFilterSet
from utilities.filters import ( from utilities.filters import (
ContentTypeFilter, MultiValueCharFilter, MultiValueNumberFilter, NumericArrayFilter, TreeNodeMultipleChoiceFilter, ContentTypeFilter, MultiValueCharFilter, MultiValueNumberFilter, NumericArrayFilter, TreeNodeMultipleChoiceFilter,
) )

View File

@ -2,7 +2,7 @@ from django.test import TestCase
from dcim.models import Device, DeviceRole, DeviceType, Interface, Location, Manufacturer, Rack, Region, Site, SiteGroup from dcim.models import Device, DeviceRole, DeviceType, Interface, Location, Manufacturer, Rack, Region, Site, SiteGroup
from ipam.choices import * from ipam.choices import *
from ipam.filters import * from ipam.filtersets import *
from ipam.models import Aggregate, IPAddress, Prefix, RIR, Role, RouteTarget, Service, VLAN, VLANGroup, VRF from ipam.models import Aggregate, IPAddress, Prefix, RIR, Role, RouteTarget, Service, VLAN, VLANGroup, VRF
from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface
from tenancy.models import Tenant, TenantGroup from tenancy.models import Tenant, TenantGroup

View File

@ -7,7 +7,7 @@ from netbox.views import generic
from utilities.tables import paginate_table from utilities.tables import paginate_table
from utilities.utils import count_related from utilities.utils import count_related
from virtualization.models import VirtualMachine, VMInterface from virtualization.models import VirtualMachine, VMInterface
from . import filters, forms, tables from . import filtersets, forms, tables
from .constants import * from .constants import *
from .models import Aggregate, IPAddress, Prefix, RIR, Role, RouteTarget, Service, VLAN, VLANGroup, VRF from .models import Aggregate, IPAddress, Prefix, RIR, Role, RouteTarget, Service, VLAN, VLANGroup, VRF
from .utils import add_available_ipaddresses, add_available_prefixes, add_available_vlans from .utils import add_available_ipaddresses, add_available_prefixes, add_available_vlans
@ -19,7 +19,7 @@ from .utils import add_available_ipaddresses, add_available_prefixes, add_availa
class VRFListView(generic.ObjectListView): class VRFListView(generic.ObjectListView):
queryset = VRF.objects.all() queryset = VRF.objects.all()
filterset = filters.VRFFilterSet filterset = filtersets.VRFFilterSet
filterset_form = forms.VRFFilterForm filterset_form = forms.VRFFilterForm
table = tables.VRFTable table = tables.VRFTable
@ -65,14 +65,14 @@ class VRFBulkImportView(generic.BulkImportView):
class VRFBulkEditView(generic.BulkEditView): class VRFBulkEditView(generic.BulkEditView):
queryset = VRF.objects.prefetch_related('tenant') queryset = VRF.objects.prefetch_related('tenant')
filterset = filters.VRFFilterSet filterset = filtersets.VRFFilterSet
table = tables.VRFTable table = tables.VRFTable
form = forms.VRFBulkEditForm form = forms.VRFBulkEditForm
class VRFBulkDeleteView(generic.BulkDeleteView): class VRFBulkDeleteView(generic.BulkDeleteView):
queryset = VRF.objects.prefetch_related('tenant') queryset = VRF.objects.prefetch_related('tenant')
filterset = filters.VRFFilterSet filterset = filtersets.VRFFilterSet
table = tables.VRFTable table = tables.VRFTable
@ -82,7 +82,7 @@ class VRFBulkDeleteView(generic.BulkDeleteView):
class RouteTargetListView(generic.ObjectListView): class RouteTargetListView(generic.ObjectListView):
queryset = RouteTarget.objects.all() queryset = RouteTarget.objects.all()
filterset = filters.RouteTargetFilterSet filterset = filtersets.RouteTargetFilterSet
filterset_form = forms.RouteTargetFilterForm filterset_form = forms.RouteTargetFilterForm
table = tables.RouteTargetTable table = tables.RouteTargetTable
@ -123,14 +123,14 @@ class RouteTargetBulkImportView(generic.BulkImportView):
class RouteTargetBulkEditView(generic.BulkEditView): class RouteTargetBulkEditView(generic.BulkEditView):
queryset = RouteTarget.objects.prefetch_related('tenant') queryset = RouteTarget.objects.prefetch_related('tenant')
filterset = filters.RouteTargetFilterSet filterset = filtersets.RouteTargetFilterSet
table = tables.RouteTargetTable table = tables.RouteTargetTable
form = forms.RouteTargetBulkEditForm form = forms.RouteTargetBulkEditForm
class RouteTargetBulkDeleteView(generic.BulkDeleteView): class RouteTargetBulkDeleteView(generic.BulkDeleteView):
queryset = RouteTarget.objects.prefetch_related('tenant') queryset = RouteTarget.objects.prefetch_related('tenant')
filterset = filters.RouteTargetFilterSet filterset = filtersets.RouteTargetFilterSet
table = tables.RouteTargetTable table = tables.RouteTargetTable
@ -142,7 +142,7 @@ class RIRListView(generic.ObjectListView):
queryset = RIR.objects.annotate( queryset = RIR.objects.annotate(
aggregate_count=count_related(Aggregate, 'rir') aggregate_count=count_related(Aggregate, 'rir')
) )
filterset = filters.RIRFilterSet filterset = filtersets.RIRFilterSet
filterset_form = forms.RIRFilterForm filterset_form = forms.RIRFilterForm
table = tables.RIRTable table = tables.RIRTable
template_name = 'ipam/rir_list.html' template_name = 'ipam/rir_list.html'
@ -184,7 +184,7 @@ class RIRBulkEditView(generic.BulkEditView):
queryset = RIR.objects.annotate( queryset = RIR.objects.annotate(
aggregate_count=count_related(Aggregate, 'rir') aggregate_count=count_related(Aggregate, 'rir')
) )
filterset = filters.RIRFilterSet filterset = filtersets.RIRFilterSet
table = tables.RIRTable table = tables.RIRTable
form = forms.RIRBulkEditForm form = forms.RIRBulkEditForm
@ -193,7 +193,7 @@ class RIRBulkDeleteView(generic.BulkDeleteView):
queryset = RIR.objects.annotate( queryset = RIR.objects.annotate(
aggregate_count=count_related(Aggregate, 'rir') aggregate_count=count_related(Aggregate, 'rir')
) )
filterset = filters.RIRFilterSet filterset = filtersets.RIRFilterSet
table = tables.RIRTable table = tables.RIRTable
@ -205,7 +205,7 @@ class AggregateListView(generic.ObjectListView):
queryset = Aggregate.objects.annotate( queryset = Aggregate.objects.annotate(
child_count=RawSQL('SELECT COUNT(*) FROM ipam_prefix WHERE ipam_prefix.prefix <<= ipam_aggregate.prefix', ()) child_count=RawSQL('SELECT COUNT(*) FROM ipam_prefix WHERE ipam_prefix.prefix <<= ipam_aggregate.prefix', ())
) )
filterset = filters.AggregateFilterSet filterset = filtersets.AggregateFilterSet
filterset_form = forms.AggregateFilterForm filterset_form = forms.AggregateFilterForm
table = tables.AggregateDetailTable table = tables.AggregateDetailTable
template_name = 'ipam/aggregate_list.html' template_name = 'ipam/aggregate_list.html'
@ -280,14 +280,14 @@ class AggregateBulkImportView(generic.BulkImportView):
class AggregateBulkEditView(generic.BulkEditView): class AggregateBulkEditView(generic.BulkEditView):
queryset = Aggregate.objects.prefetch_related('rir') queryset = Aggregate.objects.prefetch_related('rir')
filterset = filters.AggregateFilterSet filterset = filtersets.AggregateFilterSet
table = tables.AggregateTable table = tables.AggregateTable
form = forms.AggregateBulkEditForm form = forms.AggregateBulkEditForm
class AggregateBulkDeleteView(generic.BulkDeleteView): class AggregateBulkDeleteView(generic.BulkDeleteView):
queryset = Aggregate.objects.prefetch_related('rir') queryset = Aggregate.objects.prefetch_related('rir')
filterset = filters.AggregateFilterSet filterset = filtersets.AggregateFilterSet
table = tables.AggregateTable table = tables.AggregateTable
@ -337,7 +337,7 @@ class RoleBulkImportView(generic.BulkImportView):
class RoleBulkEditView(generic.BulkEditView): class RoleBulkEditView(generic.BulkEditView):
queryset = Role.objects.all() queryset = Role.objects.all()
filterset = filters.RoleFilterSet filterset = filtersets.RoleFilterSet
table = tables.RoleTable table = tables.RoleTable
form = forms.RoleBulkEditForm form = forms.RoleBulkEditForm
@ -353,7 +353,7 @@ class RoleBulkDeleteView(generic.BulkDeleteView):
class PrefixListView(generic.ObjectListView): class PrefixListView(generic.ObjectListView):
queryset = Prefix.objects.annotate_tree() queryset = Prefix.objects.annotate_tree()
filterset = filters.PrefixFilterSet filterset = filtersets.PrefixFilterSet
filterset_form = forms.PrefixFilterForm filterset_form = forms.PrefixFilterForm
table = tables.PrefixDetailTable table = tables.PrefixDetailTable
template_name = 'ipam/prefix_list.html' template_name = 'ipam/prefix_list.html'
@ -493,14 +493,14 @@ class PrefixBulkImportView(generic.BulkImportView):
class PrefixBulkEditView(generic.BulkEditView): class PrefixBulkEditView(generic.BulkEditView):
queryset = Prefix.objects.prefetch_related('site', 'vrf__tenant', 'tenant', 'vlan', 'role') queryset = Prefix.objects.prefetch_related('site', 'vrf__tenant', 'tenant', 'vlan', 'role')
filterset = filters.PrefixFilterSet filterset = filtersets.PrefixFilterSet
table = tables.PrefixTable table = tables.PrefixTable
form = forms.PrefixBulkEditForm form = forms.PrefixBulkEditForm
class PrefixBulkDeleteView(generic.BulkDeleteView): class PrefixBulkDeleteView(generic.BulkDeleteView):
queryset = Prefix.objects.prefetch_related('site', 'vrf__tenant', 'tenant', 'vlan', 'role') queryset = Prefix.objects.prefetch_related('site', 'vrf__tenant', 'tenant', 'vlan', 'role')
filterset = filters.PrefixFilterSet filterset = filtersets.PrefixFilterSet
table = tables.PrefixTable table = tables.PrefixTable
@ -510,7 +510,7 @@ class PrefixBulkDeleteView(generic.BulkDeleteView):
class IPAddressListView(generic.ObjectListView): class IPAddressListView(generic.ObjectListView):
queryset = IPAddress.objects.all() queryset = IPAddress.objects.all()
filterset = filters.IPAddressFilterSet filterset = filtersets.IPAddressFilterSet
filterset_form = forms.IPAddressFilterForm filterset_form = forms.IPAddressFilterForm
table = tables.IPAddressDetailTable table = tables.IPAddressDetailTable
@ -613,7 +613,7 @@ class IPAddressAssignView(generic.ObjectView):
addresses = self.queryset.prefetch_related('vrf', 'tenant') addresses = self.queryset.prefetch_related('vrf', 'tenant')
# Limit to 100 results # Limit to 100 results
addresses = filters.IPAddressFilterSet(request.POST, addresses).qs[:100] addresses = filtersets.IPAddressFilterSet(request.POST, addresses).qs[:100]
table = tables.IPAddressAssignTable(addresses) table = tables.IPAddressAssignTable(addresses)
return render(request, 'ipam/ipaddress_assign.html', { return render(request, 'ipam/ipaddress_assign.html', {
@ -643,14 +643,14 @@ class IPAddressBulkImportView(generic.BulkImportView):
class IPAddressBulkEditView(generic.BulkEditView): class IPAddressBulkEditView(generic.BulkEditView):
queryset = IPAddress.objects.prefetch_related('vrf__tenant', 'tenant') queryset = IPAddress.objects.prefetch_related('vrf__tenant', 'tenant')
filterset = filters.IPAddressFilterSet filterset = filtersets.IPAddressFilterSet
table = tables.IPAddressTable table = tables.IPAddressTable
form = forms.IPAddressBulkEditForm form = forms.IPAddressBulkEditForm
class IPAddressBulkDeleteView(generic.BulkDeleteView): class IPAddressBulkDeleteView(generic.BulkDeleteView):
queryset = IPAddress.objects.prefetch_related('vrf__tenant', 'tenant') queryset = IPAddress.objects.prefetch_related('vrf__tenant', 'tenant')
filterset = filters.IPAddressFilterSet filterset = filtersets.IPAddressFilterSet
table = tables.IPAddressTable table = tables.IPAddressTable
@ -662,7 +662,7 @@ class VLANGroupListView(generic.ObjectListView):
queryset = VLANGroup.objects.annotate( queryset = VLANGroup.objects.annotate(
vlan_count=count_related(VLAN, 'group') vlan_count=count_related(VLAN, 'group')
) )
filterset = filters.VLANGroupFilterSet filterset = filtersets.VLANGroupFilterSet
filterset_form = forms.VLANGroupFilterForm filterset_form = forms.VLANGroupFilterForm
table = tables.VLANGroupTable table = tables.VLANGroupTable
@ -718,7 +718,7 @@ class VLANGroupBulkEditView(generic.BulkEditView):
queryset = VLANGroup.objects.annotate( queryset = VLANGroup.objects.annotate(
vlan_count=count_related(VLAN, 'group') vlan_count=count_related(VLAN, 'group')
) )
filterset = filters.VLANGroupFilterSet filterset = filtersets.VLANGroupFilterSet
table = tables.VLANGroupTable table = tables.VLANGroupTable
form = forms.VLANGroupBulkEditForm form = forms.VLANGroupBulkEditForm
@ -727,7 +727,7 @@ class VLANGroupBulkDeleteView(generic.BulkDeleteView):
queryset = VLANGroup.objects.annotate( queryset = VLANGroup.objects.annotate(
vlan_count=count_related(VLAN, 'group') vlan_count=count_related(VLAN, 'group')
) )
filterset = filters.VLANGroupFilterSet filterset = filtersets.VLANGroupFilterSet
table = tables.VLANGroupTable table = tables.VLANGroupTable
@ -737,7 +737,7 @@ class VLANGroupBulkDeleteView(generic.BulkDeleteView):
class VLANListView(generic.ObjectListView): class VLANListView(generic.ObjectListView):
queryset = VLAN.objects.all() queryset = VLAN.objects.all()
filterset = filters.VLANFilterSet filterset = filtersets.VLANFilterSet
filterset_form = forms.VLANFilterForm filterset_form = forms.VLANFilterForm
table = tables.VLANDetailTable table = tables.VLANDetailTable
@ -805,14 +805,14 @@ class VLANBulkImportView(generic.BulkImportView):
class VLANBulkEditView(generic.BulkEditView): class VLANBulkEditView(generic.BulkEditView):
queryset = VLAN.objects.prefetch_related('site', 'group', 'tenant', 'role') queryset = VLAN.objects.prefetch_related('site', 'group', 'tenant', 'role')
filterset = filters.VLANFilterSet filterset = filtersets.VLANFilterSet
table = tables.VLANTable table = tables.VLANTable
form = forms.VLANBulkEditForm form = forms.VLANBulkEditForm
class VLANBulkDeleteView(generic.BulkDeleteView): class VLANBulkDeleteView(generic.BulkDeleteView):
queryset = VLAN.objects.prefetch_related('site', 'group', 'tenant', 'role') queryset = VLAN.objects.prefetch_related('site', 'group', 'tenant', 'role')
filterset = filters.VLANFilterSet filterset = filtersets.VLANFilterSet
table = tables.VLANTable table = tables.VLANTable
@ -822,7 +822,7 @@ class VLANBulkDeleteView(generic.BulkDeleteView):
class ServiceListView(generic.ObjectListView): class ServiceListView(generic.ObjectListView):
queryset = Service.objects.all() queryset = Service.objects.all()
filterset = filters.ServiceFilterSet filterset = filtersets.ServiceFilterSet
filterset_form = forms.ServiceFilterForm filterset_form = forms.ServiceFilterForm
table = tables.ServiceTable table = tables.ServiceTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -863,12 +863,12 @@ class ServiceDeleteView(generic.ObjectDeleteView):
class ServiceBulkEditView(generic.BulkEditView): class ServiceBulkEditView(generic.BulkEditView):
queryset = Service.objects.prefetch_related('device', 'virtual_machine') queryset = Service.objects.prefetch_related('device', 'virtual_machine')
filterset = filters.ServiceFilterSet filterset = filtersets.ServiceFilterSet
table = tables.ServiceTable table = tables.ServiceTable
form = forms.ServiceBulkEditForm form = forms.ServiceBulkEditForm
class ServiceBulkDeleteView(generic.BulkDeleteView): class ServiceBulkDeleteView(generic.BulkDeleteView):
queryset = Service.objects.prefetch_related('device', 'virtual_machine') queryset = Service.objects.prefetch_related('device', 'virtual_machine')
filterset = filters.ServiceFilterSet filterset = filtersets.ServiceFilterSet
table = tables.ServiceTable table = tables.ServiceTable

View File

@ -1,9 +1,9 @@
from collections import OrderedDict from collections import OrderedDict
from circuits.filters import CircuitFilterSet, ProviderFilterSet, ProviderNetworkFilterSet from circuits.filtersets import CircuitFilterSet, ProviderFilterSet, ProviderNetworkFilterSet
from circuits.models import Circuit, ProviderNetwork, Provider from circuits.models import Circuit, ProviderNetwork, Provider
from circuits.tables import CircuitTable, ProviderNetworkTable, ProviderTable from circuits.tables import CircuitTable, ProviderNetworkTable, ProviderTable
from dcim.filters import ( from dcim.filtersets import (
CableFilterSet, DeviceFilterSet, DeviceTypeFilterSet, PowerFeedFilterSet, RackFilterSet, LocationFilterSet, CableFilterSet, DeviceFilterSet, DeviceTypeFilterSet, PowerFeedFilterSet, RackFilterSet, LocationFilterSet,
SiteFilterSet, VirtualChassisFilterSet, SiteFilterSet, VirtualChassisFilterSet,
) )
@ -12,17 +12,17 @@ from dcim.tables import (
CableTable, DeviceTable, DeviceTypeTable, PowerFeedTable, RackTable, LocationTable, SiteTable, CableTable, DeviceTable, DeviceTypeTable, PowerFeedTable, RackTable, LocationTable, SiteTable,
VirtualChassisTable, VirtualChassisTable,
) )
from ipam.filters import AggregateFilterSet, IPAddressFilterSet, PrefixFilterSet, VLANFilterSet, VRFFilterSet from ipam.filtersets import AggregateFilterSet, IPAddressFilterSet, PrefixFilterSet, VLANFilterSet, VRFFilterSet
from ipam.models import Aggregate, IPAddress, Prefix, VLAN, VRF from ipam.models import Aggregate, IPAddress, Prefix, VLAN, VRF
from ipam.tables import AggregateTable, IPAddressTable, PrefixTable, VLANTable, VRFTable from ipam.tables import AggregateTable, IPAddressTable, PrefixTable, VLANTable, VRFTable
from secrets.filters import SecretFilterSet from secrets.filtersets import SecretFilterSet
from secrets.models import Secret from secrets.models import Secret
from secrets.tables import SecretTable from secrets.tables import SecretTable
from tenancy.filters import TenantFilterSet from tenancy.filtersets import TenantFilterSet
from tenancy.models import Tenant from tenancy.models import Tenant
from tenancy.tables import TenantTable from tenancy.tables import TenantTable
from utilities.utils import count_related from utilities.utils import count_related
from virtualization.filters import ClusterFilterSet, VirtualMachineFilterSet from virtualization.filtersets import ClusterFilterSet, VirtualMachineFilterSet
from virtualization.models import Cluster, VirtualMachine from virtualization.models import Cluster, VirtualMachine
from virtualization.tables import ClusterTable, VirtualMachineDetailTable from virtualization.tables import ClusterTable, VirtualMachineDetailTable

View File

@ -10,7 +10,7 @@ from rest_framework.viewsets import ViewSet
from extras.api.views import CustomFieldModelViewSet from extras.api.views import CustomFieldModelViewSet
from netbox.api.views import ModelViewSet from netbox.api.views import ModelViewSet
from secrets import filters from secrets import filtersets
from secrets.exceptions import InvalidKey from secrets.exceptions import InvalidKey
from secrets.models import Secret, SecretRole, SessionKey, UserKey from secrets.models import Secret, SecretRole, SessionKey, UserKey
from utilities.utils import count_related from utilities.utils import count_related
@ -39,7 +39,7 @@ class SecretRoleViewSet(CustomFieldModelViewSet):
secret_count=count_related(Secret, 'role') secret_count=count_related(Secret, 'role')
) )
serializer_class = serializers.SecretRoleSerializer serializer_class = serializers.SecretRoleSerializer
filterset_class = filters.SecretRoleFilterSet filterset_class = filtersets.SecretRoleFilterSet
# #
@ -49,7 +49,7 @@ class SecretRoleViewSet(CustomFieldModelViewSet):
class SecretViewSet(ModelViewSet): class SecretViewSet(ModelViewSet):
queryset = Secret.objects.prefetch_related('role', 'tags') queryset = Secret.objects.prefetch_related('role', 'tags')
serializer_class = serializers.SecretSerializer serializer_class = serializers.SecretSerializer
filterset_class = filters.SecretFilterSet filterset_class = filtersets.SecretFilterSet
master_key = None master_key = None

View File

@ -1,7 +1,7 @@
from django.test import TestCase from django.test import TestCase
from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Site from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Site
from secrets.filters import * from secrets.filtersets import *
from secrets.models import Secret, SecretRole from secrets.models import Secret, SecretRole
from virtualization.models import Cluster, ClusterType, VirtualMachine from virtualization.models import Cluster, ClusterType, VirtualMachine

View File

@ -2,14 +2,14 @@ import base64
import logging import logging
from django.contrib import messages from django.contrib import messages
from django.shortcuts import get_object_or_404, redirect, render from django.shortcuts import redirect, render
from django.utils.html import escape from django.utils.html import escape
from django.utils.safestring import mark_safe from django.utils.safestring import mark_safe
from netbox.views import generic from netbox.views import generic
from utilities.tables import paginate_table from utilities.tables import paginate_table
from utilities.utils import count_related from utilities.utils import count_related
from . import filters, forms, tables from . import filtersets, forms, tables
from .models import SecretRole, Secret, SessionKey, UserKey from .models import SecretRole, Secret, SessionKey, UserKey
@ -70,7 +70,7 @@ class SecretRoleBulkEditView(generic.BulkEditView):
queryset = SecretRole.objects.annotate( queryset = SecretRole.objects.annotate(
secret_count=count_related(Secret, 'role') secret_count=count_related(Secret, 'role')
) )
filterset = filters.SecretRoleFilterSet filterset = filtersets.SecretRoleFilterSet
table = tables.SecretRoleTable table = tables.SecretRoleTable
form = forms.SecretRoleBulkEditForm form = forms.SecretRoleBulkEditForm
@ -88,7 +88,7 @@ class SecretRoleBulkDeleteView(generic.BulkDeleteView):
class SecretListView(generic.ObjectListView): class SecretListView(generic.ObjectListView):
queryset = Secret.objects.all() queryset = Secret.objects.all()
filterset = filters.SecretFilterSet filterset = filtersets.SecretFilterSet
filterset_form = forms.SecretFilterForm filterset_form = forms.SecretFilterForm
table = tables.SecretTable table = tables.SecretTable
action_buttons = ('import', 'export') action_buttons = ('import', 'export')
@ -220,12 +220,12 @@ class SecretBulkImportView(generic.BulkImportView):
class SecretBulkEditView(generic.BulkEditView): class SecretBulkEditView(generic.BulkEditView):
queryset = Secret.objects.prefetch_related('role') queryset = Secret.objects.prefetch_related('role')
filterset = filters.SecretFilterSet filterset = filtersets.SecretFilterSet
table = tables.SecretTable table = tables.SecretTable
form = forms.SecretBulkEditForm form = forms.SecretBulkEditForm
class SecretBulkDeleteView(generic.BulkDeleteView): class SecretBulkDeleteView(generic.BulkDeleteView):
queryset = Secret.objects.prefetch_related('role') queryset = Secret.objects.prefetch_related('role')
filterset = filters.SecretFilterSet filterset = filtersets.SecretFilterSet
table = tables.SecretTable table = tables.SecretTable

View File

@ -4,7 +4,7 @@ from circuits.models import Circuit
from dcim.models import Device, Rack, Site from dcim.models import Device, Rack, Site
from extras.api.views import CustomFieldModelViewSet from extras.api.views import CustomFieldModelViewSet
from ipam.models import IPAddress, Prefix, VLAN, VRF from ipam.models import IPAddress, Prefix, VLAN, VRF
from tenancy import filters from tenancy import filtersets
from tenancy.models import Tenant, TenantGroup from tenancy.models import Tenant, TenantGroup
from utilities.utils import count_related from utilities.utils import count_related
from virtualization.models import VirtualMachine from virtualization.models import VirtualMachine
@ -32,7 +32,7 @@ class TenantGroupViewSet(CustomFieldModelViewSet):
cumulative=True cumulative=True
) )
serializer_class = serializers.TenantGroupSerializer serializer_class = serializers.TenantGroupSerializer
filterset_class = filters.TenantGroupFilterSet filterset_class = filtersets.TenantGroupFilterSet
# #
@ -54,4 +54,4 @@ class TenantViewSet(CustomFieldModelViewSet):
vrf_count=count_related(VRF, 'tenant') vrf_count=count_related(VRF, 'tenant')
) )
serializer_class = serializers.TenantSerializer serializer_class = serializers.TenantSerializer
filterset_class = filters.TenantFilterSet filterset_class = filtersets.TenantFilterSet

View File

@ -1,6 +1,6 @@
from django.test import TestCase from django.test import TestCase
from tenancy.filters import * from tenancy.filtersets import *
from tenancy.models import Tenant, TenantGroup from tenancy.models import Tenant, TenantGroup

View File

@ -4,7 +4,7 @@ from ipam.models import IPAddress, Prefix, VLAN, VRF
from netbox.views import generic from netbox.views import generic
from utilities.tables import paginate_table from utilities.tables import paginate_table
from virtualization.models import VirtualMachine, Cluster from virtualization.models import VirtualMachine, Cluster
from . import filters, forms, tables from . import filtersets, forms, tables
from .models import Tenant, TenantGroup from .models import Tenant, TenantGroup
@ -63,7 +63,7 @@ class TenantGroupBulkEditView(generic.BulkEditView):
'tenant_count', 'tenant_count',
cumulative=True cumulative=True
) )
filterset = filters.TenantGroupFilterSet filterset = filtersets.TenantGroupFilterSet
table = tables.TenantGroupTable table = tables.TenantGroupTable
form = forms.TenantGroupBulkEditForm form = forms.TenantGroupBulkEditForm
@ -85,7 +85,7 @@ class TenantGroupBulkDeleteView(generic.BulkDeleteView):
class TenantListView(generic.ObjectListView): class TenantListView(generic.ObjectListView):
queryset = Tenant.objects.all() queryset = Tenant.objects.all()
filterset = filters.TenantFilterSet filterset = filtersets.TenantFilterSet
filterset_form = forms.TenantFilterForm filterset_form = forms.TenantFilterForm
table = tables.TenantTable table = tables.TenantTable
@ -130,12 +130,12 @@ class TenantBulkImportView(generic.BulkImportView):
class TenantBulkEditView(generic.BulkEditView): class TenantBulkEditView(generic.BulkEditView):
queryset = Tenant.objects.prefetch_related('group') queryset = Tenant.objects.prefetch_related('group')
filterset = filters.TenantFilterSet filterset = filtersets.TenantFilterSet
table = tables.TenantTable table = tables.TenantTable
form = forms.TenantBulkEditForm form = forms.TenantBulkEditForm
class TenantBulkDeleteView(generic.BulkDeleteView): class TenantBulkDeleteView(generic.BulkDeleteView):
queryset = Tenant.objects.prefetch_related('group') queryset = Tenant.objects.prefetch_related('group')
filterset = filters.TenantFilterSet filterset = filtersets.TenantFilterSet
table = tables.TenantTable table = tables.TenantTable

View File

@ -6,7 +6,7 @@ from rest_framework.routers import APIRootView
from rest_framework.viewsets import ViewSet from rest_framework.viewsets import ViewSet
from netbox.api.views import ModelViewSet from netbox.api.views import ModelViewSet
from users import filters from users import filtersets
from users.models import ObjectPermission, UserConfig from users.models import ObjectPermission, UserConfig
from utilities.querysets import RestrictedQuerySet from utilities.querysets import RestrictedQuerySet
from utilities.utils import deepmerge from utilities.utils import deepmerge
@ -28,13 +28,13 @@ class UsersRootView(APIRootView):
class UserViewSet(ModelViewSet): class UserViewSet(ModelViewSet):
queryset = RestrictedQuerySet(model=User).prefetch_related('groups').order_by('username') queryset = RestrictedQuerySet(model=User).prefetch_related('groups').order_by('username')
serializer_class = serializers.UserSerializer serializer_class = serializers.UserSerializer
filterset_class = filters.UserFilterSet filterset_class = filtersets.UserFilterSet
class GroupViewSet(ModelViewSet): class GroupViewSet(ModelViewSet):
queryset = RestrictedQuerySet(model=Group).annotate(user_count=Count('user')).order_by('name') queryset = RestrictedQuerySet(model=Group).annotate(user_count=Count('user')).order_by('name')
serializer_class = serializers.GroupSerializer serializer_class = serializers.GroupSerializer
filterset_class = filters.GroupFilterSet filterset_class = filtersets.GroupFilterSet
# #
@ -44,7 +44,7 @@ class GroupViewSet(ModelViewSet):
class ObjectPermissionViewSet(ModelViewSet): class ObjectPermissionViewSet(ModelViewSet):
queryset = ObjectPermission.objects.prefetch_related('object_types', 'groups', 'users') queryset = ObjectPermission.objects.prefetch_related('object_types', 'groups', 'users')
serializer_class = serializers.ObjectPermissionSerializer serializer_class = serializers.ObjectPermissionSerializer
filterset_class = filters.ObjectPermissionFilterSet filterset_class = filtersets.ObjectPermissionFilterSet
# #

View File

@ -2,7 +2,7 @@ from django.contrib.auth.models import Group, User
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from django.test import TestCase from django.test import TestCase
from users.filters import GroupFilterSet, ObjectPermissionFilterSet, UserFilterSet from users.filtersets import GroupFilterSet, ObjectPermissionFilterSet, UserFilterSet
from users.models import ObjectPermission from users.models import ObjectPermission

View File

@ -7,7 +7,7 @@ from taggit.managers import TaggableManager
from dcim.choices import * from dcim.choices import *
from dcim.fields import MACAddressField from dcim.fields import MACAddressField
from dcim.filters import DeviceFilterSet, SiteFilterSet from dcim.filtersets import DeviceFilterSet, SiteFilterSet
from dcim.models import ( from dcim.models import (
Device, DeviceRole, DeviceType, Interface, Manufacturer, Platform, Rack, Region, Site Device, DeviceRole, DeviceType, Interface, Manufacturer, Platform, Rack, Region, Site
) )

View File

@ -3,7 +3,7 @@ from rest_framework.routers import APIRootView
from dcim.models import Device from dcim.models import Device
from extras.api.views import ConfigContextQuerySetMixin, CustomFieldModelViewSet, ModelViewSet from extras.api.views import ConfigContextQuerySetMixin, CustomFieldModelViewSet, ModelViewSet
from utilities.utils import count_related from utilities.utils import count_related
from virtualization import filters from virtualization import filtersets
from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface
from . import serializers from . import serializers
@ -25,7 +25,7 @@ class ClusterTypeViewSet(CustomFieldModelViewSet):
cluster_count=count_related(Cluster, 'type') cluster_count=count_related(Cluster, 'type')
) )
serializer_class = serializers.ClusterTypeSerializer serializer_class = serializers.ClusterTypeSerializer
filterset_class = filters.ClusterTypeFilterSet filterset_class = filtersets.ClusterTypeFilterSet
class ClusterGroupViewSet(CustomFieldModelViewSet): class ClusterGroupViewSet(CustomFieldModelViewSet):
@ -33,7 +33,7 @@ class ClusterGroupViewSet(CustomFieldModelViewSet):
cluster_count=count_related(Cluster, 'group') cluster_count=count_related(Cluster, 'group')
) )
serializer_class = serializers.ClusterGroupSerializer serializer_class = serializers.ClusterGroupSerializer
filterset_class = filters.ClusterGroupFilterSet filterset_class = filtersets.ClusterGroupFilterSet
class ClusterViewSet(CustomFieldModelViewSet): class ClusterViewSet(CustomFieldModelViewSet):
@ -44,7 +44,7 @@ class ClusterViewSet(CustomFieldModelViewSet):
virtualmachine_count=count_related(VirtualMachine, 'cluster') virtualmachine_count=count_related(VirtualMachine, 'cluster')
) )
serializer_class = serializers.ClusterSerializer serializer_class = serializers.ClusterSerializer
filterset_class = filters.ClusterFilterSet filterset_class = filtersets.ClusterFilterSet
# #
@ -55,7 +55,7 @@ class VirtualMachineViewSet(ConfigContextQuerySetMixin, CustomFieldModelViewSet)
queryset = VirtualMachine.objects.prefetch_related( queryset = VirtualMachine.objects.prefetch_related(
'cluster__site', 'role', 'tenant', 'platform', 'primary_ip4', 'primary_ip6', 'tags' 'cluster__site', 'role', 'tenant', 'platform', 'primary_ip4', 'primary_ip6', 'tags'
) )
filterset_class = filters.VirtualMachineFilterSet filterset_class = filtersets.VirtualMachineFilterSet
def get_serializer_class(self): def get_serializer_class(self):
""" """
@ -83,5 +83,5 @@ class VMInterfaceViewSet(ModelViewSet):
'virtual_machine', 'parent', 'tags', 'tagged_vlans', 'ip_addresses' 'virtual_machine', 'parent', 'tags', 'tagged_vlans', 'ip_addresses'
) )
serializer_class = serializers.VMInterfaceSerializer serializer_class = serializers.VMInterfaceSerializer
filterset_class = filters.VMInterfaceFilterSet filterset_class = filtersets.VMInterfaceFilterSet
brief_prefetch_fields = ['virtual_machine'] brief_prefetch_fields = ['virtual_machine']

View File

@ -4,7 +4,7 @@ from django.db.models import Q
from dcim.models import DeviceRole, Platform, Region, Site, SiteGroup from dcim.models import DeviceRole, Platform, Region, Site, SiteGroup
from extras.filters import TagFilter from extras.filters import TagFilter
from extras.filtersets import LocalConfigContextFilterSet from extras.filtersets import LocalConfigContextFilterSet
from tenancy.filters import TenancyFilterSet from tenancy.filtersets import TenancyFilterSet
from utilities.filters import MultiValueMACAddressFilter, TreeNodeMultipleChoiceFilter from utilities.filters import MultiValueMACAddressFilter, TreeNodeMultipleChoiceFilter
from utilities.filtersets import OrganizationalModelFilterSet, PrimaryModelFilterSet from utilities.filtersets import OrganizationalModelFilterSet, PrimaryModelFilterSet
from .choices import * from .choices import *

View File

@ -4,7 +4,7 @@ from dcim.models import DeviceRole, Platform, Region, Site, SiteGroup
from ipam.models import IPAddress from ipam.models import IPAddress
from tenancy.models import Tenant, TenantGroup from tenancy.models import Tenant, TenantGroup
from virtualization.choices import * from virtualization.choices import *
from virtualization.filters import * from virtualization.filtersets import *
from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface

View File

@ -13,7 +13,7 @@ from netbox.views import generic
from secrets.models import Secret from secrets.models import Secret
from utilities.tables import paginate_table from utilities.tables import paginate_table
from utilities.utils import count_related from utilities.utils import count_related
from . import filters, forms, tables from . import filtersets, forms, tables
from .models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface from .models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface
@ -64,7 +64,7 @@ class ClusterTypeBulkEditView(generic.BulkEditView):
queryset = ClusterType.objects.annotate( queryset = ClusterType.objects.annotate(
cluster_count=count_related(Cluster, 'type') cluster_count=count_related(Cluster, 'type')
) )
filterset = filters.ClusterTypeFilterSet filterset = filtersets.ClusterTypeFilterSet
table = tables.ClusterTypeTable table = tables.ClusterTypeTable
form = forms.ClusterTypeBulkEditForm form = forms.ClusterTypeBulkEditForm
@ -125,7 +125,7 @@ class ClusterGroupBulkEditView(generic.BulkEditView):
queryset = ClusterGroup.objects.annotate( queryset = ClusterGroup.objects.annotate(
cluster_count=count_related(Cluster, 'group') cluster_count=count_related(Cluster, 'group')
) )
filterset = filters.ClusterGroupFilterSet filterset = filtersets.ClusterGroupFilterSet
table = tables.ClusterGroupTable table = tables.ClusterGroupTable
form = forms.ClusterGroupBulkEditForm form = forms.ClusterGroupBulkEditForm
@ -148,7 +148,7 @@ class ClusterListView(generic.ObjectListView):
vm_count=count_related(VirtualMachine, 'cluster') vm_count=count_related(VirtualMachine, 'cluster')
) )
table = tables.ClusterTable table = tables.ClusterTable
filterset = filters.ClusterFilterSet filterset = filtersets.ClusterFilterSet
filterset_form = forms.ClusterFilterForm filterset_form = forms.ClusterFilterForm
@ -205,14 +205,14 @@ class ClusterBulkImportView(generic.BulkImportView):
class ClusterBulkEditView(generic.BulkEditView): class ClusterBulkEditView(generic.BulkEditView):
queryset = Cluster.objects.prefetch_related('type', 'group', 'site') queryset = Cluster.objects.prefetch_related('type', 'group', 'site')
filterset = filters.ClusterFilterSet filterset = filtersets.ClusterFilterSet
table = tables.ClusterTable table = tables.ClusterTable
form = forms.ClusterBulkEditForm form = forms.ClusterBulkEditForm
class ClusterBulkDeleteView(generic.BulkDeleteView): class ClusterBulkDeleteView(generic.BulkDeleteView):
queryset = Cluster.objects.prefetch_related('type', 'group', 'site') queryset = Cluster.objects.prefetch_related('type', 'group', 'site')
filterset = filters.ClusterFilterSet filterset = filtersets.ClusterFilterSet
table = tables.ClusterTable table = tables.ClusterTable
@ -304,7 +304,7 @@ class ClusterRemoveDevicesView(generic.ObjectEditView):
class VirtualMachineListView(generic.ObjectListView): class VirtualMachineListView(generic.ObjectListView):
queryset = VirtualMachine.objects.all() queryset = VirtualMachine.objects.all()
filterset = filters.VirtualMachineFilterSet filterset = filtersets.VirtualMachineFilterSet
filterset_form = forms.VirtualMachineFilterForm filterset_form = forms.VirtualMachineFilterForm
table = tables.VirtualMachineDetailTable table = tables.VirtualMachineDetailTable
template_name = 'virtualization/virtualmachine_list.html' template_name = 'virtualization/virtualmachine_list.html'
@ -388,14 +388,14 @@ class VirtualMachineBulkImportView(generic.BulkImportView):
class VirtualMachineBulkEditView(generic.BulkEditView): class VirtualMachineBulkEditView(generic.BulkEditView):
queryset = VirtualMachine.objects.prefetch_related('cluster', 'tenant', 'role') queryset = VirtualMachine.objects.prefetch_related('cluster', 'tenant', 'role')
filterset = filters.VirtualMachineFilterSet filterset = filtersets.VirtualMachineFilterSet
table = tables.VirtualMachineTable table = tables.VirtualMachineTable
form = forms.VirtualMachineBulkEditForm form = forms.VirtualMachineBulkEditForm
class VirtualMachineBulkDeleteView(generic.BulkDeleteView): class VirtualMachineBulkDeleteView(generic.BulkDeleteView):
queryset = VirtualMachine.objects.prefetch_related('cluster', 'tenant', 'role') queryset = VirtualMachine.objects.prefetch_related('cluster', 'tenant', 'role')
filterset = filters.VirtualMachineFilterSet filterset = filtersets.VirtualMachineFilterSet
table = tables.VirtualMachineTable table = tables.VirtualMachineTable
@ -405,7 +405,7 @@ class VirtualMachineBulkDeleteView(generic.BulkDeleteView):
class VMInterfaceListView(generic.ObjectListView): class VMInterfaceListView(generic.ObjectListView):
queryset = VMInterface.objects.all() queryset = VMInterface.objects.all()
filterset = filters.VMInterfaceFilterSet filterset = filtersets.VMInterfaceFilterSet
filterset_form = forms.VMInterfaceFilterForm filterset_form = forms.VMInterfaceFilterForm
table = tables.VMInterfaceTable table = tables.VMInterfaceTable
action_buttons = ('export',) action_buttons = ('export',)
@ -500,7 +500,7 @@ class VirtualMachineBulkAddInterfaceView(generic.BulkComponentCreateView):
form = forms.VMInterfaceBulkCreateForm form = forms.VMInterfaceBulkCreateForm
queryset = VMInterface.objects.all() queryset = VMInterface.objects.all()
model_form = forms.VMInterfaceForm model_form = forms.VMInterfaceForm
filterset = filters.VirtualMachineFilterSet filterset = filtersets.VirtualMachineFilterSet
table = tables.VirtualMachineTable table = tables.VirtualMachineTable
def get_required_permission(self): def get_required_permission(self):