【问题标题】:Django tastypie: Add new Array of objects Next to "objects" and "meta" in Api outputDjango 美味派:在 Api 输出中的“对象”和“元”旁边添加新的对象数组
【发布时间】:2015-03-16 13:42:07
【问题描述】:

在 Django sweetpie 中,我有来自 Api 的输出。

{ 
 "meta": {
    "limit": 1000,
    "next": null,
    "offset": 0,
    "previous": null,
    "total_count": 2
  },
 "objects": [
    {},
    {}
   ]
}

我想扩展输出数据。我需要的是在与“对象”数据分开的“对象”旁边添加名为“图像”的新对象数组,如下所示:

{ 
 "meta": {
    "limit": 1000,
    "next": null,
    "offset": 0,
    "previous": null,
    "total_count": 2
  },
 "objects": [
    {},
    {}
   ],
 "images": [
    {},
    {}
   ]
}

我如何用 Django 的 sweetpie 来实现它?

【问题讨论】:

    标签: django python-2.7 tastypie


    【解决方案1】:

    Resource 继承您的类,并将它们定义为 ListField,如下所示:

    objects = fields.DictField(attribute='objects')
    
    categories = fields.ListField(attribute='category')
    

    【讨论】:

      【解决方案2】:

      对于列表回复,您可以使用 Resource.alter_list_data_to_serialize

      class PageDataAddition(object):
          def alter_list_data_to_serialize(self, request, data):
              data['page'] = {'your_data': True}
              return data
      
      class ItemResource(PageDataAddition, ModelResource):
          ...
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-02-21
        • 1970-01-01
        • 1970-01-01
        • 2012-11-13
        • 2022-01-09
        • 1970-01-01
        • 2018-12-10
        • 1970-01-01
        相关资源
        最近更新 更多