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

Replace connection_status with connected_endpoint_reachable on InterfaceConnectionSerializer

Jeremy Stretch 5 лет назад
Родитель
Сommit
55268c90c8
1 измененных файлов с 8 добавлено и 2 удалено
  1. 8 2
      netbox/dcim/api/serializers.py

+ 8 - 2
netbox/dcim/api/serializers.py

@@ -786,17 +786,23 @@ class CablePathSerializer(serializers.ModelSerializer):
 class InterfaceConnectionSerializer(ValidatedModelSerializer):
     interface_a = serializers.SerializerMethodField()
     interface_b = NestedInterfaceSerializer(source='connected_endpoint')
-    # connection_status = ChoiceField(choices=CONNECTION_STATUS_CHOICES, required=False)
+    connected_endpoint_reachable = serializers.SerializerMethodField(read_only=True)
 
     class Meta:
         model = Interface
-        fields = ['interface_a', 'interface_b']
+        fields = ['interface_a', 'interface_b', 'connected_endpoint_reachable']
 
     @swagger_serializer_method(serializer_or_field=NestedInterfaceSerializer)
     def get_interface_a(self, obj):
         context = {'request': self.context['request']}
         return NestedInterfaceSerializer(instance=obj, context=context).data
 
+    @swagger_serializer_method(serializer_or_field=serializers.BooleanField)
+    def get_connected_endpoint_reachable(self, obj):
+        if obj._path is not None:
+            return obj._path.is_active
+        return None
+
 
 #
 # Virtual chassis