8

我有一个模型的美味资源。我还有一个视图,它提出了一个需要序列化并发送给客户端的查询集。我正在寻找一种让美味派资源处理查询集的序列化和脱水的方法。

我看到我可以将单个对象传递给

[Resource.build_bundle(self, obj=None, data=None, request=None)][1]

创建一个捆绑包,然后将捆绑包传递给

[Resource.full_dehydrate(self, bundle)][2]

最后打电话

[Resource.serialize(self, request, data, format, options=None)][3]

关于脱水数据。

但我想将完整的查询集转换为 json 而不仅仅是单个对象。也许我需要的只是一种将完整查询集转换为捆绑包的方法。

任何帮助表示赞赏!

4

1 回答 1

10

这也困扰着我,但我想我在查看了 github 上的 sweetpie 代码后找到了答案。

这将制作一堆捆绑包。

bundles = [Resource.build_bundle(obj=q, request=request) for q in Queryset]

这将执行脱水。

data = [Resource.full_dehydrate(bundle) for bundle in bundles]

这将执行序列化。

Resource.serialize(None, data, 'application/json'),
于 2012-11-28T08:45:46.610 回答