From ad7faa630b5509f8436bcf105d49f7befeee567b Mon Sep 17 00:00:00 2001 From: Abhimanyu Saharan Date: Sat, 13 May 2023 03:26:40 +0530 Subject: [PATCH] optimize queries --- netbox/ipam/api/views.py | 2 +- netbox/ipam/views.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/netbox/ipam/api/views.py b/netbox/ipam/api/views.py index 266461654..e3dce8b45 100644 --- a/netbox/ipam/api/views.py +++ b/netbox/ipam/api/views.py @@ -148,7 +148,7 @@ class FHRPGroupAssignmentViewSet(NetBoxModelViewSet): class VLANGroupViewSet(NetBoxModelViewSet): queryset = VLANGroup.objects.annotate( vlan_count=count_related(VLAN, 'group'), - utilization=count_related(VLAN, 'group') / (F('max_vid') - F('min_vid') + 1.0) * 100 + utilization=F('vlan_count') / (F('max_vid') - F('min_vid') + 1.0) * 100 ).prefetch_related('tags') serializer_class = serializers.VLANGroupSerializer filterset_class = filtersets.VLANGroupFilterSet diff --git a/netbox/ipam/views.py b/netbox/ipam/views.py index c9f488acf..f0365c2ce 100644 --- a/netbox/ipam/views.py +++ b/netbox/ipam/views.py @@ -878,7 +878,7 @@ class IPAddressBulkDeleteView(generic.BulkDeleteView): class VLANGroupListView(generic.ObjectListView): queryset = VLANGroup.objects.annotate( vlan_count=count_related(VLAN, 'group'), - utilization=count_related(VLAN, 'group') / (F('max_vid') - F('min_vid') + 1.0) * 100 + utilization=F('vlan_count') / (F('max_vid') - F('min_vid') + 1.0) * 100 ).prefetch_related('tags') filterset = filtersets.VLANGroupFilterSet filterset_form = forms.VLANGroupFilterForm @@ -933,7 +933,7 @@ class VLANGroupBulkImportView(generic.BulkImportView): class VLANGroupBulkEditView(generic.BulkEditView): queryset = VLANGroup.objects.annotate( vlan_count=count_related(VLAN, 'group'), - utilization=count_related(VLAN, 'group') / (F('max_vid') - F('min_vid') + 1.0) * 100 + utilization=F('vlan_count') / (F('max_vid') - F('min_vid') + 1.0) * 100 ).prefetch_related('tags') filterset = filtersets.VLANGroupFilterSet table = tables.VLANGroupTable @@ -943,7 +943,7 @@ class VLANGroupBulkEditView(generic.BulkEditView): class VLANGroupBulkDeleteView(generic.BulkDeleteView): queryset = VLANGroup.objects.annotate( vlan_count=count_related(VLAN, 'group'), - utilization=count_related(VLAN, 'group') / (F('max_vid') - F('min_vid') + 1.0) * 100 + utilization=F('vlan_count') / (F('max_vid') - F('min_vid') + 1.0) * 100 ).prefetch_related('tags') filterset = filtersets.VLANGroupFilterSet table = tables.VLANGroupTable