Просмотр исходного кода

Fixes #4903: Fix member count when searching for virtual chassis

Jeremy Stretch 5 лет назад
Родитель
Сommit
09015c98c4
4 измененных файлов с 5 добавлено и 4 удалено
  1. 2 1
      docs/release-notes/version-2.9.md
  2. 1 1
      netbox/dcim/api/views.py
  3. 1 1
      netbox/dcim/views.py
  4. 1 1
      netbox/netbox/views.py

+ 2 - 1
docs/release-notes/version-2.9.md

@@ -12,6 +12,7 @@
 
 
 ### Bug Fixes
 ### Bug Fixes
 
 
+* [#4903](https://github.com/netbox-community/netbox/issues/4903) - Fix member count when searching for virtual chassis
 * [#4905](https://github.com/netbox-community/netbox/issues/4905) - Fix front port count on device type view
 * [#4905](https://github.com/netbox-community/netbox/issues/4905) - Fix front port count on device type view
 * [#4912](https://github.com/netbox-community/netbox/issues/4912) - Fix image attachment API endpoint
 * [#4912](https://github.com/netbox-community/netbox/issues/4912) - Fix image attachment API endpoint
 * [#4914](https://github.com/netbox-community/netbox/issues/4914) - Fix toggling cable status under device view
 * [#4914](https://github.com/netbox-community/netbox/issues/4914) - Fix toggling cable status under device view
@@ -21,7 +22,7 @@
 * [#4938](https://github.com/netbox-community/netbox/issues/4938) - Show add, import buttons on virtual chassis list view
 * [#4938](https://github.com/netbox-community/netbox/issues/4938) - Show add, import buttons on virtual chassis list view
 * [#4939](https://github.com/netbox-community/netbox/issues/4939) - Fix linking to LAG interfaces on other VC members
 * [#4939](https://github.com/netbox-community/netbox/issues/4939) - Fix linking to LAG interfaces on other VC members
 * [#4950](https://github.com/netbox-community/netbox/issues/4950) - Include inventory item label in API serializer, UI view
 * [#4950](https://github.com/netbox-community/netbox/issues/4950) - Include inventory item label in API serializer, UI view
-* [#4951](https://github.com/netbox-community/netbox/issues/4951) - Redirect to device inventory view after creting a new inventory item
+* [#4951](https://github.com/netbox-community/netbox/issues/4951) - Redirect to device inventory view after creating a new inventory item
 * [#4952](https://github.com/netbox-community/netbox/issues/4952) - Default to VM tab when creating/editing an IP address for a VM
 * [#4952](https://github.com/netbox-community/netbox/issues/4952) - Default to VM tab when creating/editing an IP address for a VM
 
 
 ### Other Changes
 ### Other Changes

+ 1 - 1
netbox/dcim/api/views.py

@@ -608,7 +608,7 @@ class CableViewSet(ModelViewSet):
 
 
 class VirtualChassisViewSet(ModelViewSet):
 class VirtualChassisViewSet(ModelViewSet):
     queryset = VirtualChassis.objects.prefetch_related('tags').annotate(
     queryset = VirtualChassis.objects.prefetch_related('tags').annotate(
-        member_count=Count('members')
+        member_count=Count('members', distinct=True)
     ).order_by(*VirtualChassis._meta.ordering)
     ).order_by(*VirtualChassis._meta.ordering)
     serializer_class = serializers.VirtualChassisSerializer
     serializer_class = serializers.VirtualChassisSerializer
     filterset_class = filters.VirtualChassisFilterSet
     filterset_class = filters.VirtualChassisFilterSet

+ 1 - 1
netbox/dcim/views.py

@@ -2180,7 +2180,7 @@ class InterfaceConnectionsListView(ObjectListView):
 
 
 class VirtualChassisListView(ObjectListView):
 class VirtualChassisListView(ObjectListView):
     queryset = VirtualChassis.objects.prefetch_related('master').annotate(
     queryset = VirtualChassis.objects.prefetch_related('master').annotate(
-        member_count=Count('members')
+        member_count=Count('members', distinct=True)
     ).order_by(*VirtualChassis._meta.ordering)
     ).order_by(*VirtualChassis._meta.ordering)
     table = tables.VirtualChassisTable
     table = tables.VirtualChassisTable
     filterset = filters.VirtualChassisFilterSet
     filterset = filters.VirtualChassisFilterSet

+ 1 - 1
netbox/netbox/views.py

@@ -100,7 +100,7 @@ SEARCH_TYPES = OrderedDict((
     }),
     }),
     ('virtualchassis', {
     ('virtualchassis', {
         'queryset': VirtualChassis.objects.prefetch_related('master').annotate(
         'queryset': VirtualChassis.objects.prefetch_related('master').annotate(
-            member_count=Count('members')
+            member_count=Count('members', distinct=True)
         ).order_by(*VirtualChassis._meta.ordering),
         ).order_by(*VirtualChassis._meta.ordering),
         'filterset': VirtualChassisFilterSet,
         'filterset': VirtualChassisFilterSet,
         'table': VirtualChassisTable,
         'table': VirtualChassisTable,