如何更改django响应行为以不将数据嵌套在“数据”字段中

问题描述 投票:0回答:1

我想更改端点发送响应的方式

每当我使用django这样的响应时:

return Response(serializer.data, status=status.HTTP_200_OK)

我使用的模型:

class StationModel(models.Model):
    class Meta:
        db_table = 'station'

    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=100)
    shortname = models.CharField(max_length=20)
    lat = models.DecimalField(max_digits=50, decimal_places=15)
    lan = models.DecimalField(max_digits=50, decimal_places=15)

我从端点得到的响应看起来像这样:

{
    "data": [
        {
            "type": "Mymodel",
            "id": "1",
            "attributes": {
                "name": "xxxxx",
                "shortname": "xxxxx",
                "lat": "123.000000000000000",
                "lan": "213.000000000000000"
            }

        }

是否可以自定义响应以使其看起来像这样,或者至少摆脱“数据”字段:

        {
            "id": "1",
            "name": "xxxxx",
            "shortname": "xxxxx",
            "lat": "123.000000000000000",
            "lan": "213.000000000000000"
         }

json django django-rest-framework
1个回答
0
投票
我通过在settings.py中进行设置来使它正常工作>

'DEFAULT_RENDERER_CLASSES': ( 'rest_framework.renderers.JSONRenderer', ),

© www.soinside.com 2019 - 2024. All rights reserved.