代码之家  ›  专栏  ›  技术社区  ›  Milano

Django:如何将QuerySet序列化为对象而不是数组?

  •  0
  • Milano  · 技术社区  · 5 年前

    QuerySet 而不是JSON数组。

    对于模型 Day ,序列化的 查询集 Day.date s作为值。

    class DaySerializer(serializers.ModelSerializer):
        class Meta:
            model = Day
            exclude = []
    

    DaySerializer(Day.objects.all(),many=True).data
    
    {'15.02.2005':{...},
     '16.02.2005':{...},
      ...
    }
    

    我很好奇是否有什么DRF方法可以做到这一点。

    1 回复  |  直到 5 年前
        1
  •  1
  •   Gokhan Sari    5 年前

    虽然没有现成的方法,但是你可以重写 .to_representation() .to_internal_value()

    这些方法使您能够改变序列化和反序列化的方式。

    看到了吗 here