Python Django序列化程序未将数据保存到数据库,但响应正常

Python Django序列化程序未将数据保存到数据库,但响应正常,python,django,rest,Python,Django,Rest,下面的序列化程序不保存对数据库的更改,但来自API的JSON响应具有新的正确值! 怎么了 class FieldSerializer(serializers.ModelSerializer): class Meta: model = Field fields = 'id', 'name', 'default' class DocumentSerializer(serializers.HyperlinkedModelSerializer): fie

下面的序列化程序不保存对数据库的更改,但来自API的JSON响应具有新的正确值! 怎么了

class FieldSerializer(serializers.ModelSerializer):
    class Meta:
        model = Field
        fields = 'id', 'name', 'default'

class DocumentSerializer(serializers.HyperlinkedModelSerializer):
    field = FieldSerializer(many=False, read_only=True)

    def _save_field(self, instance):
        field = self.initial_data.pop('field', None)
        field_ids = field['id']
        field = Field.objects.get(pk=field_ids)
        instance.field = field

    def save(self, **kwargs):
        instance = super().save(**kwargs)
        self._save_field(instance)

设置字段后,您没有保存
实例

def _save_field(self, instance):
    field = self.initial_data.pop('field', None)
    field_ids = field['id']
    field = Field.objects.get(pk=field_ids)
    instance.field = field
    instance.save()  # <-- mandatory
def_保存_字段(自身,实例):
field=self.initial_data.pop('field',None)
字段\u id=字段['id']
field=field.objects.get(pk=field\u id)
instance.field=字段
save()实例#