Django - группировка в сериализаторе

Я пытаюсь создать сериализатор, который группирует результат, я могу сделать это своим "грязным" способом, но мне интересно, что является правильным способом

мои модели:

class Station(models.Model):
    type = models.ForeignKey(StationType, on_delete=models.SET_NULL, null=True)
    line = models.CharField(max_length=1)
    number = models.CharField(max_length=3)
    bool1= models.BooleanField( null=True, blank=True, default=False)
    bool2= models.BooleanField( null=True, blank=True, default=False)
    def str(self):return self.number

мой сериализатор:

class mySerializer(serializers.ModelSerializer):

    class Meta:
        model = Station
        fields = ['line', 'number','bool1', 'bool2']

результат:

[
    {
        "line": "1",
        "number": "001",
        "bool1": false,
        "bool2": false
    },
    {
        "line": "1",
        "number": "001",
        "bool1": false,
        "bool2": false
    },
    {
        "line": "3",
        "number": "013",
        "bool1": false,
        "bool2": false
    }
]

ожидаемый результат (больше или меньше):

[
    {"line": "1",{
        "number": "001",
        "bool1": false,
        "bool2": false
    },
    {
        "line": "1",
        "number": "001",
        "bool1": false,
        "bool2": false
    }},
    {"line": "3",
    {
        "number": "013",
        "bool1": false,
        "bool2": false
    }}
]

Буду благодарен за любую помощь ;) Если бы вы могли дать мне источник, где я мог бы узнать больше о сериализаторах, я был бы еще более благодарен

Вернуться на верх