gpt4 book ai didi

tastypie - Django-tastypie -- 如何生成自定义的xml

转载 作者:行者123 更新时间:2023-12-02 00:24:03 24 4
gpt4 key购买 nike

我在 tastypie 中有一个简单模型的 ModelResource,它有一个 id 和一个名称。

XML 输出如下所示。但我想用我的模型名称代替“对象”。我似乎一直在为如何解决这个问题而苦苦挣扎——有什么快速的帮助吗?非常感谢——真的!

<response>
<objects type="list">
<object>
<id>1</id>
<name>foo1</name>
<resource_uri> blah </resource_uri>
</object>
<object>
<id>2</id>
<name>foo2</name>
<resource_uri> blah </resource_uri>
</object>
</objects>
</response>

最佳答案

您可以尝试重载 Resource 类的“alter_list_data_to_serialize(...)”方法。正如文档字符串所说:

A hook to alter list data just before it gets serialized & sent to the user.

Useful for restructuring/renaming aspects of the what's going to be sent.

这就是您更改“数据”的地方,很快就会将其转换为 XML 并发送给用户。

像这样的事情应该让你继续:

def alter_list_data_to_serialize(self, request, data):
#self.object_class.lower() is the name you'd like instead of "objects"
data = { self.object_class.lower() : [ element for element in data[ 'objects' ] ] }
return data

我还没有对此进行测试,但我正在使用这种方法来成功地改变我的响应的外观。

关于tastypie - Django-tastypie -- 如何生成自定义的xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9689776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com