我在Postgres数据库中有这样的数据:
我想创建REST API,以返回嵌套的JSON数据,如下所示:
[
{
"machine": "MC1",
"work" : [
{
"title": "21TCE20200910",
"subTitle1": "INSERT CORE",
"subTitle2": "P20200910-001",
"subTitle3": "DRAW20200910",
"status": 0,
"delay": 2
},
{
"title": "21TCE20200910",
"subTitle1": "INSERT CORE",
"subTitle2": "P20200910-001",
"subTitle3": "DRAW20200912",
"status": 1,
"delay": 1
}
]
},
{
"machine": "MC2",
"work" : [
{
"title": "21TCE20200911",
"subTitle1": "SCREW",
"subTitle2": "P20200910-001",
"subTitle3": "DRAW20200910",
"status": 1,
"delay": 2
}
]
},
{
"machine": "MC3",
"work" : [
{
"title": "21TCE20200913",
"subTitle1": "INSERT FIX",
"subTitle2": "P20200910-001",
"subTitle3": "DRAW20200910",
"status": 0,
"delay": 1
}
]
}
目前我只能为每个记录返回普通的json,但我想分组并返回像上面那样嵌套的json,任何帮助都将不胜感激。
以下是我的代码
from django.db import models class MachineSchedule(models.Model): machine = models.CharField(max_length=255) title = models.CharField(max_length=255) subTitle1 = models.CharField(max_length=255) subTitle2 = models.CharField(max_length=255) subTitle3 = models.CharField(max_length=255) status = models.IntegerField(1) delay = models.IntegerField(1)
视图.py
from django.shortcuts import render from rest_framework import generics from .models import MachineSchedule from .serializers import MachineScheduleSerializer class MachineScheduleListAPIView(generics.ListCreateAPIView): serializer_class = MachineScheduleSerializer model = MachineSchedule fields = '__all__'
序列化.py
from rest_framework import serializers from .models import MachineAllocate class MachineAllocateSerializer(serializers.ModelSerializer): class Meta: model = MachineAllocate fields = '__all__'