自定义序列化程序中的字段

2024-05-28 19:27:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码:

class ProjectsSerializer(serializers.Serializer):
    id = serializers.IntegerField(read_only=True)
    name = serializers.CharField(required=True, allow_blank=False, max_length=100)
    isActive = serializers.BooleanField()

    def create(self, validated_data):
        return Project.objects.create(**validated_data)

    def update(self, instance, validated_data):
        instance.id = validated_data.get('id', instance.id)
        instance.name = validated_data.get('name', instance.name)
        instance.isActive = validated_data.get('isActive', instance.isActive)
        return instance

class ProjectsCreateSerializer(ProjectsSerializer):enter code here
    class Meta:
        fields = ('name')

为什么

class Meta: 
    fields = ('name')

不工作?我看到所有的对象,而不仅仅是名称

我希望ProjectsCreateSerializer中字段的输出是{"name": ""},但实际输出是{"name": "","isActive": false}


Tags: instancenameselfidtruedatagetreturn

热门问题