我有一个ModelSerializer和一个SerializerMethodField。我想重写序列化程序的to_representation方法以具有自定义输出,但我不知道如何访问SerializerMethodField
class MySerializer(serializers.ModelSerializer):
duration = serializers.SerializerMethodField()
def get_duration(self, obj):
return obj.time * 1000
def to_representation(self, instance):
return {
'name': instance.name,
'duration of cycle': # HOW TO ACCESS DURATION????
}
class Meta:
model = MyModel发布于 2015-04-22 02:18:09
def to_representation(self, instance):
duration = self.fields['duration']
duration_value = duration.to_representation(
duration.get_attribute(instance)
)
return {
'name': instance.name,
'duration of cycle': duration_value
}参考文献:
发布于 2015-04-23 20:12:34
所以我做了以下几件事:
def to_representation(self, instance):
rep = super(MySerializer, self).to_representation(instance)
duration = rep.pop('duration', '')
return {
# the rest
'duration of cycle': duration,
}https://stackoverflow.com/questions/29784512
复制相似问题