QuerySet()到Json序列化

2024-06-26 01:41:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这些模型:Ml,Mli和Mlvid。我抓取如下信息

mliv = Mlvid.objects.filter(mli__ml__pipe_id=175083)

我怎么给这种东西消毒?我可以把它序列化如下

^{pr2}$

但它只包含Mlvid字段。如何同时添加与查询相关的Ml和Mli字段?谢谢您。如果你需要更多的信息,请告诉我。在

我想我需要迭代mli并构建一个list/dict,然后序列化该list或随后使用dict。在


Tags: 模型信息id序列化objectsfiltermldict
2条回答

问题是mliv包含对象。您可以查询所需字段,而不是整个对象:

mliv = Mlvid.objects.filter(mli__ml__pipe_id=175083).values('field_1', 'field_2')

其中field_1和{}是Mlvid的字段。你会得到一个dicts,serializable的列表。在

为了序列化如下查询集并获取所有相关字段:

mliv = Mlvid.objects.filter(mli__ml__pipe_id=175083)

首先我使用了values() 最大允许偏差=Mlvid.objects.filter(mli_yuml_upipe_id=175083)。值('mli_uml_ustreet')

接下来我创建一个列表

^{pr2}$

现在我遍历mliv并将内容添加到列表中

for m in mliv:
    mlist.append(m)

接下来,我将列表传递给JsonResponse()

resp = JsonResponse(mlist, safe=False)

相关问题 更多 >