我正在发出一个SOAP post请求,该请求返回CamelCase中的数据。我需要将响应从SOAP请求重构回snake_case。然后我再次收到来自Restful API的蛇形请求,我需要将其转换为CamelCase,然后发送SOAP请求。
我有一个微型序列化器,我编写了该微型序列化器以在两者之间进行转换,即扩展了to_representation方法,然后返回了各自的CamelCase或snake_case,但是我不确定这个微型序列化器是否是一个很好的实现方法,应该也许比序列化程序更有用吗?
这里是序列化程序,将包含名称和attribute_given键的对象列表转换为CamelCase。
class ToCamelCase(serializers.Serializer):
name = serializers.CharField()
attribute_given = serializers.CharField()
def to_representation(self, value):
data = []
for x in range(len(value)):
data.append({
'Name': value['name'],
'AttributeGiven': value['attribute_given'],
})
return data
我正在寻找解决此问题的最佳方法。是通过扩展to_representation并在序列化程序级别返回自定义键名称来解决此问题的一种好方法,还是我应该为此编写辅助函数?