Skip to content

Commit 4ea4e57

Browse files
fabi125jeremystretch
authored andcommitted
Fixes #16624: Set allow_null=True on method fields that can return None
1 parent 377543c commit 4ea4e57

File tree

4 files changed

+5
-5
lines changed

4 files changed

+5
-5
lines changed

netbox/dcim/api/serializers_/base.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class ConnectedEndpointsSerializer(serializers.ModelSerializer):
1313
"""
1414
Legacy serializer for pre-v3.3 connections
1515
"""
16-
connected_endpoints_type = serializers.SerializerMethodField(read_only=True)
16+
connected_endpoints_type = serializers.SerializerMethodField(read_only=True, allow_null=True)
1717
connected_endpoints = serializers.SerializerMethodField(read_only=True)
1818
connected_endpoints_reachable = serializers.SerializerMethodField(read_only=True)
1919

@@ -22,7 +22,7 @@ def get_connected_endpoints_type(self, obj):
2222
if endpoints := obj.connected_endpoints:
2323
return f'{endpoints[0]._meta.app_label}.{endpoints[0]._meta.model_name}'
2424

25-
@extend_schema_field(serializers.ListField)
25+
@extend_schema_field(serializers.ListField(allow_null=True))
2626
def get_connected_endpoints(self, obj):
2727
"""
2828
Return the appropriate serializer for the type of connected object.

netbox/dcim/api/serializers_/cables.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ def get_path(self, obj):
9191
class CabledObjectSerializer(serializers.ModelSerializer):
9292
cable = CableSerializer(nested=True, read_only=True, allow_null=True)
9393
cable_end = serializers.CharField(read_only=True)
94-
link_peers_type = serializers.SerializerMethodField(read_only=True)
94+
link_peers_type = serializers.SerializerMethodField(read_only=True, allow_null=True)
9595
link_peers = serializers.SerializerMethodField(read_only=True)
9696
_occupied = serializers.SerializerMethodField(read_only=True)
9797

netbox/dcim/api/serializers_/devices.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ class Meta:
8888
]
8989
brief_fields = ('id', 'url', 'display', 'name', 'description')
9090

91-
@extend_schema_field(NestedDeviceSerializer)
91+
@extend_schema_field(NestedDeviceSerializer(allow_null=True))
9292
def get_parent_device(self, obj):
9393
try:
9494
device_bay = obj.parent_bay

netbox/extras/api/serializers_/scripts.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def get_vars(self, obj):
3939
def get_display(self, obj):
4040
return f'{obj.name} ({obj.module})'
4141

42-
@extend_schema_field(serializers.CharField())
42+
@extend_schema_field(serializers.CharField(allow_null=True))
4343
def get_description(self, obj):
4444
if obj.python_class:
4545
return obj.python_class().description

0 commit comments

Comments
 (0)