Django REST - 如何创建非模型序列化器?

时间:2015-04-07 09:11:38

标签: python json django serialization

首先,我想说我是Django的新手。

我想知道是否有可能创建一个非ModelSerializer来序列化基于模型的基于序列化器?

serializers.py 中,我已经有了这个:

class MapSerializer(serializers.ModelSerializer):
   class Meta:
      model = Map
      fields = ('id', 'name')


class GrenadeSerializer(serializers.ModelSerializer):
   class Meta:
       model = Grenade
       fields = ('id', 'name')

我想要一个新的序列化程序,它允许显示类似的JSON:

{
"maps": {
    "map": [
        {
            "id": "1",
            "name": "dust2"
        },
        {
            "id": "2",
            "name": "inferno"
        }
    ]
},

"grenades": {
    "grenade": [
        {
            "id": "1",
            "name": "flashbang"
        },
        {
            "id": "2",
            "name": "smoke"
        }
    ]
}}

我需要这样的东西,即使我知道以下结构是不正确的:

class MyNewSerializer(serializers.ModelSerializer):
    maps = MapSerializer(many=True)
    grenades = GrenadeSerializer(many=True)

class Meta:
    field = ('maps', 'grenades')

提前致谢!

0 个答案:

没有答案