属性的名称自定义

问题描述:

我在玩attribute_of和spyne 2.10(非常高兴)。让我们考虑以下模型:属性的名称自定义

class Product(ComplexModel): 
    id = complex.XmlAttribute(primitive.Uuid) 
    edition = primitive.Unicode 
    edition_id = complex.XmlAttribute(primitive.Uuid, attribute_of='edition') 

这给了类似的结果:

<product id="00000000-0000-0000-0000-000000000000"> 
    <edition edition_id="00000000-0000-0000-0000-000000000000">My edition</edition> 
</product> 

如何自定义edition_id的名字像<edition id="..."/>结果?

从2.10开始,Spyne不支持这一点。

我想不出一个简单的解决方法,因为它需要编写method_call和method_return_document事件以及wsdl事件来手动修补wsdl。但是,如果你可以为它编写测试,我会看看我能为2.11做些什么。

+0

下周我会投入一些时间来解决这个问题。谢谢。 – kbec 2013-04-25 08:00:59

+0

嗨,请看看https://github.com/plq/spyne/blob/72665943092378a6d49460e21adeb95845dd4de5/examples/xml_utils.py#L78并告诉我你的想法。 – 2013-05-19 13:38:27