From 90fa1fd2b411aa415ee7c269456101982a4f0690 Mon Sep 17 00:00:00 2001 From: Arthur Date: Wed, 22 Feb 2023 13:56:37 -0800 Subject: [PATCH] 9608 serializer fixes --- netbox/dcim/api/nested_serializers.py | 2 +- netbox/ipam/api/serializers.py | 5 ++--- netbox/virtualization/api/serializers.py | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/netbox/dcim/api/nested_serializers.py b/netbox/dcim/api/nested_serializers.py index fc57ed21a..3770b2adc 100644 --- a/netbox/dcim/api/nested_serializers.py +++ b/netbox/dcim/api/nested_serializers.py @@ -414,7 +414,7 @@ class NestedFrontPortSerializer(WritableNestedSerializer): class NestedModuleBaySerializer(WritableNestedSerializer): url = serializers.HyperlinkedIdentityField(view_name='dcim-api:modulebay-detail') - module = NestedModuleSerializer(required=False, read_only=True) + module = NestedModuleSerializer(required=False, read_only=True, allow_null=True) class Meta: model = models.ModuleBay diff --git a/netbox/ipam/api/serializers.py b/netbox/ipam/api/serializers.py index 627a2ddfb..ffaa252a7 100644 --- a/netbox/ipam/api/serializers.py +++ b/netbox/ipam/api/serializers.py @@ -211,7 +211,7 @@ class VLANSerializer(NetBoxModelSerializer): tenant = NestedTenantSerializer(required=False, allow_null=True) status = ChoiceField(choices=VLANStatusChoices, required=False) role = NestedRoleSerializer(required=False, allow_null=True) - l2vpn_termination = NestedL2VPNTerminationSerializer(read_only=True) + l2vpn_termination = NestedL2VPNTerminationSerializer(read_only=True, allow_null=True) prefix_count = serializers.IntegerField(read_only=True) class Meta: @@ -341,13 +341,12 @@ class IPRangeSerializer(NetBoxModelSerializer): tenant = NestedTenantSerializer(required=False, allow_null=True) status = ChoiceField(choices=IPRangeStatusChoices, required=False) role = NestedRoleSerializer(required=False, allow_null=True) - children = serializers.IntegerField(read_only=True) class Meta: model = IPRange fields = [ 'id', 'url', 'display', 'family', 'start_address', 'end_address', 'size', 'vrf', 'tenant', 'status', 'role', - 'description', 'comments', 'tags', 'custom_fields', 'created', 'last_updated', 'children', + 'description', 'comments', 'tags', 'custom_fields', 'created', 'last_updated', ] read_only_fields = ['family'] diff --git a/netbox/virtualization/api/serializers.py b/netbox/virtualization/api/serializers.py index a31aba852..e53ce164e 100644 --- a/netbox/virtualization/api/serializers.py +++ b/netbox/virtualization/api/serializers.py @@ -114,7 +114,7 @@ class VMInterfaceSerializer(NetBoxModelSerializer): virtual_machine = NestedVirtualMachineSerializer() parent = NestedVMInterfaceSerializer(required=False, allow_null=True) bridge = NestedVMInterfaceSerializer(required=False, allow_null=True) - mode = ChoiceField(choices=InterfaceModeChoices, allow_blank=True, required=False) + mode = ChoiceField(choices=InterfaceModeChoices, allow_blank=True, required=False, allow_null=True) untagged_vlan = NestedVLANSerializer(required=False, allow_null=True) tagged_vlans = SerializedPKRelatedField( queryset=VLAN.objects.all(), @@ -123,7 +123,7 @@ class VMInterfaceSerializer(NetBoxModelSerializer): many=True ) vrf = NestedVRFSerializer(required=False, allow_null=True) - l2vpn_termination = NestedL2VPNTerminationSerializer(read_only=True) + l2vpn_termination = NestedL2VPNTerminationSerializer(read_only=True, allow_null=True) count_ipaddresses = serializers.IntegerField(read_only=True) count_fhrp_groups = serializers.IntegerField(read_only=True) mac_address = serializers.CharField(required=False, default=None)