首页 > 解决方案 > 如何在 django rest 序列化程序上删除多余的空格

问题描述

我有这个问题 atm 你在 django 中序列化一个对象,它看起来像这样。

{"title": "   remove   all spaces  "}

在序列化程序中,您可以设置 extra_kwargs 来修剪字段。结果是下一个

{"title": "remove   all spaces"}

有没有办法删除“删除”和“全部”这两个词之间的多余空格?

这是序列化程序示例:

class exampleSerializer(serializers.ModelSerializer):
  
  class Meta:
     model = Example
     fields = ("title", )
     extra_kwargs = {"content": {"trim_whitespace": True}}

标签: djangodjango-rest-frameworkdjango-serializer

解决方案


将 to_representation 方法添加到您的序列化程序:

    def to_representation(self, data):
        data = super(exampleSerializer, self).to_representation(data)
        content = data['content']
        data['content'] = " ".join(content.split())
        return data

推荐阅读