我有这样的序列化器:
class PersonSerializer(serializers.ModelSerializer):
gender = serializers.SerializerMethodField()
bio = BioSerializer()
class Meta:
model = Person
fields = UserSerializer.Meta.fields + ('gender', 'bio',)
def get_gender(self, obj):
return obj.get_gender_display()
Run Code Online (Sandbox Code Playgroud)
我在执行GET请求时使用它来显示"男性"和"女性"("F"的"M").
这很好用.
但现在我正在为模型编写补丁方法并且SerializerMethodField()已经read_only=True.所以我没有为性别领域获得价值serializer.validated_data().如何克服这个问题?