set local_context_data serializer on device and vm to method

This commit is contained in:
Dan Starner 2020-03-02 13:34:01 -05:00
parent 1b38f3ad3a
commit 406708218b
No known key found for this signature in database
GPG Key ID: F61C872CB9042CE3
2 changed files with 13 additions and 0 deletions

View File

@ -376,6 +376,7 @@ class DeviceSerializer(TaggitSerializer, CustomFieldModelSerializer):
cluster = NestedClusterSerializer(required=False, allow_null=True)
virtual_chassis = NestedVirtualChassisSerializer(required=False, allow_null=True)
tags = TagListSerializerField(required=False)
local_context_data = serializers.SerializerMethodField()
class Meta:
model = Device
@ -411,6 +412,11 @@ class DeviceSerializer(TaggitSerializer, CustomFieldModelSerializer):
data['device_bay'] = NestedDeviceBaySerializer(instance=device_bay, context=context).data
return data
@swagger_serializer_method(serializer_or_field=serializers.DictField)
def get_local_context_data(self, obj):
"""Used to strongly type the local_context_data field for Swagger generation
"""
return obj.local_context_data
class DeviceWithConfigContextSerializer(DeviceSerializer):
config_context = serializers.SerializerMethodField()

View File

@ -67,6 +67,7 @@ class VirtualMachineSerializer(TaggitSerializer, CustomFieldModelSerializer):
primary_ip4 = NestedIPAddressSerializer(required=False, allow_null=True)
primary_ip6 = NestedIPAddressSerializer(required=False, allow_null=True)
tags = TagListSerializerField(required=False)
local_context_data = serializers.SerializerMethodField()
class Meta:
model = VirtualMachine
@ -77,6 +78,12 @@ class VirtualMachineSerializer(TaggitSerializer, CustomFieldModelSerializer):
]
validators = []
@swagger_serializer_method(serializer_or_field=serializers.DictField)
def get_local_context_data(self, obj):
"""Used to strongly type the local_context_data field for Swagger generation
"""
return obj.local_context_data
class VirtualMachineWithConfigContextSerializer(VirtualMachineSerializer):
config_context = serializers.SerializerMethodField()