jeremystretch 3 лет назад
Родитель
Сommit
72726c784a
1 измененных файлов с 60 добавлено и 69 удалено
  1. 60 69
      netbox/netbox/constants.py

+ 60 - 69
netbox/netbox/constants.py

@@ -1,33 +1,24 @@
 from collections import OrderedDict
 from typing import Dict
 
-from circuits.filtersets import CircuitFilterSet, ProviderFilterSet, ProviderNetworkFilterSet
+import circuits.filtersets
+import circuits.tables
+import dcim.filtersets
+import dcim.tables
+import ipam.filtersets
+import ipam.tables
+import tenancy.filtersets
+import tenancy.tables
+import virtualization.filtersets
+import virtualization.tables
 from circuits.models import Circuit, ProviderNetwork, Provider
-from circuits.tables import CircuitTable, ProviderNetworkTable, ProviderTable
-from dcim.filtersets import (
-    CableFilterSet, DeviceFilterSet, DeviceTypeFilterSet, LocationFilterSet, ModuleFilterSet, ModuleTypeFilterSet,
-    PowerFeedFilterSet, RackFilterSet, RackReservationFilterSet, SiteFilterSet, VirtualChassisFilterSet,
-)
 from dcim.models import (
     Cable, Device, DeviceType, Location, Module, ModuleType, PowerFeed, Rack, RackReservation, Site, VirtualChassis,
 )
-from dcim.tables import (
-    CableTable, DeviceTable, DeviceTypeTable, LocationTable, ModuleTable, ModuleTypeTable, PowerFeedTable, RackTable,
-    RackReservationTable, SiteTable, VirtualChassisTable,
-)
-from ipam.filtersets import (
-    AggregateFilterSet, ASNFilterSet, IPAddressFilterSet, PrefixFilterSet, ServiceFilterSet, VLANFilterSet,
-    VRFFilterSet,
-)
 from ipam.models import Aggregate, ASN, IPAddress, Prefix, Service, VLAN, VRF
-from ipam.tables import AggregateTable, ASNTable, IPAddressTable, PrefixTable, ServiceTable, VLANTable, VRFTable
-from tenancy.filtersets import ContactFilterSet, TenantFilterSet
 from tenancy.models import Contact, Tenant, ContactAssignment
-from tenancy.tables import ContactTable, TenantTable
 from utilities.utils import count_related
-from virtualization.filtersets import ClusterFilterSet, VirtualMachineFilterSet
 from virtualization.models import Cluster, VirtualMachine
-from virtualization.tables import ClusterTable, VirtualMachineTable
 
 SEARCH_MAX_RESULTS = 15
 
@@ -37,22 +28,22 @@ CIRCUIT_TYPES = OrderedDict(
             'queryset': Provider.objects.annotate(
                 count_circuits=count_related(Circuit, 'provider')
             ),
-            'filterset': ProviderFilterSet,
-            'table': ProviderTable,
+            'filterset': circuits.filtersets.ProviderFilterSet,
+            'table': circuits.tables.ProviderTable,
             'url': 'circuits:provider_list',
         }),
         ('circuit', {
             'queryset': Circuit.objects.prefetch_related(
                 'type', 'provider', 'tenant', 'terminations__site'
             ),
-            'filterset': CircuitFilterSet,
-            'table': CircuitTable,
+            'filterset': circuits.filtersets.CircuitFilterSet,
+            'table': circuits.tables.CircuitTable,
             'url': 'circuits:circuit_list',
         }),
         ('providernetwork', {
             'queryset': ProviderNetwork.objects.prefetch_related('provider'),
-            'filterset': ProviderNetworkFilterSet,
-            'table': ProviderNetworkTable,
+            'filterset': circuits.filtersets.ProviderNetworkFilterSet,
+            'table': circuits.tables.ProviderNetworkTable,
             'url': 'circuits:providernetwork_list',
         }),
     )
@@ -63,22 +54,22 @@ DCIM_TYPES = OrderedDict(
     (
         ('site', {
             'queryset': Site.objects.prefetch_related('region', 'tenant'),
-            'filterset': SiteFilterSet,
-            'table': SiteTable,
+            'filterset': dcim.filtersets.SiteFilterSet,
+            'table': dcim.tables.SiteTable,
             'url': 'dcim:site_list',
         }),
         ('rack', {
             'queryset': Rack.objects.prefetch_related('site', 'location', 'tenant', 'role').annotate(
                 device_count=count_related(Device, 'rack')
             ),
-            'filterset': RackFilterSet,
-            'table': RackTable,
+            'filterset': dcim.filtersets.RackFilterSet,
+            'table': dcim.tables.RackTable,
             'url': 'dcim:rack_list',
         }),
         ('rackreservation', {
             'queryset': RackReservation.objects.prefetch_related('site', 'rack', 'user'),
-            'filterset': RackReservationFilterSet,
-            'table': RackReservationTable,
+            'filterset': dcim.filtersets.RackReservationFilterSet,
+            'table': dcim.tables.RackReservationTable,
             'url': 'dcim:rackreservation_list',
         }),
         ('location', {
@@ -95,60 +86,60 @@ DCIM_TYPES = OrderedDict(
                 'rack_count',
                 cumulative=True
             ).prefetch_related('site'),
-            'filterset': LocationFilterSet,
-            'table': LocationTable,
+            'filterset': dcim.filtersets.LocationFilterSet,
+            'table': dcim.tables.LocationTable,
             'url': 'dcim:location_list',
         }),
         ('devicetype', {
             'queryset': DeviceType.objects.prefetch_related('manufacturer').annotate(
                 instance_count=count_related(Device, 'device_type')
             ),
-            'filterset': DeviceTypeFilterSet,
-            'table': DeviceTypeTable,
+            'filterset': dcim.filtersets.DeviceTypeFilterSet,
+            'table': dcim.tables.DeviceTypeTable,
             'url': 'dcim:devicetype_list',
         }),
         ('device', {
             'queryset': Device.objects.prefetch_related(
                 'device_type__manufacturer', 'device_role', 'tenant', 'site', 'rack', 'primary_ip4', 'primary_ip6',
             ),
-            'filterset': DeviceFilterSet,
-            'table': DeviceTable,
+            'filterset': dcim.filtersets.DeviceFilterSet,
+            'table': dcim.tables.DeviceTable,
             'url': 'dcim:device_list',
         }),
         ('moduletype', {
             'queryset': ModuleType.objects.prefetch_related('manufacturer').annotate(
                 instance_count=count_related(Module, 'module_type')
             ),
-            'filterset': ModuleTypeFilterSet,
-            'table': ModuleTypeTable,
+            'filterset': dcim.filtersets.ModuleTypeFilterSet,
+            'table': dcim.tables.ModuleTypeTable,
             'url': 'dcim:moduletype_list',
         }),
         ('module', {
             'queryset': Module.objects.prefetch_related(
                 'module_type__manufacturer', 'device', 'module_bay',
             ),
-            'filterset': ModuleFilterSet,
-            'table': ModuleTable,
+            'filterset': dcim.filtersets.ModuleFilterSet,
+            'table': dcim.tables.ModuleTable,
             'url': 'dcim:module_list',
         }),
         ('virtualchassis', {
             'queryset': VirtualChassis.objects.prefetch_related('master').annotate(
                 member_count=count_related(Device, 'virtual_chassis')
             ),
-            'filterset': VirtualChassisFilterSet,
-            'table': VirtualChassisTable,
+            'filterset': dcim.filtersets.VirtualChassisFilterSet,
+            'table': dcim.tables.VirtualChassisTable,
             'url': 'dcim:virtualchassis_list',
         }),
         ('cable', {
             'queryset': Cable.objects.all(),
-            'filterset': CableFilterSet,
-            'table': CableTable,
+            'filterset': dcim.filtersets.CableFilterSet,
+            'table': dcim.tables.CableTable,
             'url': 'dcim:cable_list',
         }),
         ('powerfeed', {
             'queryset': PowerFeed.objects.all(),
-            'filterset': PowerFeedFilterSet,
-            'table': PowerFeedTable,
+            'filterset': dcim.filtersets.PowerFeedFilterSet,
+            'table': dcim.tables.PowerFeedTable,
             'url': 'dcim:powerfeed_list',
         }),
     )
@@ -158,44 +149,44 @@ IPAM_TYPES = OrderedDict(
     (
         ('vrf', {
             'queryset': VRF.objects.prefetch_related('tenant'),
-            'filterset': VRFFilterSet,
-            'table': VRFTable,
+            'filterset': ipam.filtersets.VRFFilterSet,
+            'table': ipam.tables.VRFTable,
             'url': 'ipam:vrf_list',
         }),
         ('aggregate', {
             'queryset': Aggregate.objects.prefetch_related('rir'),
-            'filterset': AggregateFilterSet,
-            'table': AggregateTable,
+            'filterset': ipam.filtersets.AggregateFilterSet,
+            'table': ipam.tables.AggregateTable,
             'url': 'ipam:aggregate_list',
         }),
         ('prefix', {
             'queryset': Prefix.objects.prefetch_related('site', 'vrf__tenant', 'tenant', 'vlan', 'role'),
-            'filterset': PrefixFilterSet,
-            'table': PrefixTable,
+            'filterset': ipam.filtersets.PrefixFilterSet,
+            'table': ipam.tables.PrefixTable,
             'url': 'ipam:prefix_list',
         }),
         ('ipaddress', {
             'queryset': IPAddress.objects.prefetch_related('vrf__tenant', 'tenant'),
-            'filterset': IPAddressFilterSet,
-            'table': IPAddressTable,
+            'filterset': ipam.filtersets.IPAddressFilterSet,
+            'table': ipam.tables.IPAddressTable,
             'url': 'ipam:ipaddress_list',
         }),
         ('vlan', {
             'queryset': VLAN.objects.prefetch_related('site', 'group', 'tenant', 'role'),
-            'filterset': VLANFilterSet,
-            'table': VLANTable,
+            'filterset': ipam.filtersets.VLANFilterSet,
+            'table': ipam.tables.VLANTable,
             'url': 'ipam:vlan_list',
         }),
         ('asn', {
             'queryset': ASN.objects.prefetch_related('rir', 'tenant'),
-            'filterset': ASNFilterSet,
-            'table': ASNTable,
+            'filterset': ipam.filtersets.ASNFilterSet,
+            'table': ipam.tables.ASNTable,
             'url': 'ipam:asn_list',
         }),
         ('service', {
             'queryset': Service.objects.prefetch_related('device', 'virtual_machine'),
-            'filterset': ServiceFilterSet,
-            'table': ServiceTable,
+            'filterset': ipam.filtersets.ServiceFilterSet,
+            'table': ipam.tables.ServiceTable,
             'url': 'ipam:service_list',
         }),
     )
@@ -205,15 +196,15 @@ TENANCY_TYPES = OrderedDict(
     (
         ('tenant', {
             'queryset': Tenant.objects.prefetch_related('group'),
-            'filterset': TenantFilterSet,
-            'table': TenantTable,
+            'filterset': tenancy.filtersets.TenantFilterSet,
+            'table': tenancy.tables.TenantTable,
             'url': 'tenancy:tenant_list',
         }),
         ('contact', {
             'queryset': Contact.objects.prefetch_related('group', 'assignments').annotate(
                 assignment_count=count_related(ContactAssignment, 'contact')),
-            'filterset': ContactFilterSet,
-            'table': ContactTable,
+            'filterset': tenancy.filtersets.ContactFilterSet,
+            'table': tenancy.tables.ContactTable,
             'url': 'tenancy:contact_list',
         }),
     )
@@ -226,16 +217,16 @@ VIRTUALIZATION_TYPES = OrderedDict(
                 device_count=count_related(Device, 'cluster'),
                 vm_count=count_related(VirtualMachine, 'cluster')
             ),
-            'filterset': ClusterFilterSet,
-            'table': ClusterTable,
+            'filterset': virtualization.filtersets.ClusterFilterSet,
+            'table': virtualization.tables.ClusterTable,
             'url': 'virtualization:cluster_list',
         }),
         ('virtualmachine', {
             'queryset': VirtualMachine.objects.prefetch_related(
                 'cluster', 'tenant', 'platform', 'primary_ip4', 'primary_ip6',
             ),
-            'filterset': VirtualMachineFilterSet,
-            'table': VirtualMachineTable,
+            'filterset': virtualization.filtersets.VirtualMachineFilterSet,
+            'table': virtualization.tables.VirtualMachineTable,
             'url': 'virtualization:virtualmachine_list',
         }),
     )