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

Fixes #2938: Exclude circuit terminations from API interface connections endpoint

Jeremy Stretch 7 лет назад
Родитель
Сommit
3e6033e9ff
2 измененных файлов с 4 добавлено и 3 удалено
  1. 1 0
      CHANGELOG.md
  2. 3 3
      netbox/dcim/api/views.py

+ 1 - 0
CHANGELOG.md

@@ -5,6 +5,7 @@ v2.5.8 (FUTURE)
 * [#2705](https://github.com/digitalocean/netbox/issues/2705) - Fix endpoint grouping in API docs
 * [#2705](https://github.com/digitalocean/netbox/issues/2705) - Fix endpoint grouping in API docs
 * [#2923](https://github.com/digitalocean/netbox/issues/2923) - Provider filter form's site field should be blank by default
 * [#2923](https://github.com/digitalocean/netbox/issues/2923) - Provider filter form's site field should be blank by default
 * [#2938](https://github.com/digitalocean/netbox/issues/2938) - Enforce deterministic ordering of device components returned by API
 * [#2938](https://github.com/digitalocean/netbox/issues/2938) - Enforce deterministic ordering of device components returned by API
+* [#2939](https://github.com/digitalocean/netbox/issues/2939) - Exclude circuit terminations from API interface connections endpoint
 
 
 ---
 ---
 
 

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

@@ -496,11 +496,11 @@ class PowerConnectionViewSet(ListModelMixin, GenericViewSet):
 
 
 class InterfaceConnectionViewSet(ListModelMixin, GenericViewSet):
 class InterfaceConnectionViewSet(ListModelMixin, GenericViewSet):
     queryset = Interface.objects.select_related(
     queryset = Interface.objects.select_related(
-        'device', '_connected_interface', '_connected_circuittermination'
+        'device', '_connected_interface__device'
     ).filter(
     ).filter(
         # Avoid duplicate connections by only selecting the lower PK in a connected pair
         # Avoid duplicate connections by only selecting the lower PK in a connected pair
-        Q(_connected_interface__isnull=False, pk__lt=F('_connected_interface')) |
-        Q(_connected_circuittermination__isnull=False)
+        _connected_interface__isnull=False,
+        pk__lt=F('_connected_interface')
     )
     )
     serializer_class = serializers.InterfaceConnectionSerializer
     serializer_class = serializers.InterfaceConnectionSerializer
     filterset_class = filters.InterfaceConnectionFilter
     filterset_class = filters.InterfaceConnectionFilter