我有以下类型
<xsd:element name="getDetail">
<xsd:complexType>
<xsd:sequence>
<xsd:choice>
<xsd:element name="uno" type="xsd:string" />
<xsd:element name="dos" type="uct:DosType" />
<xsd:element name="tres" type="uct:E164Type" />
<xsd:element name="cuatro" type="xsd:string" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
所以我必须选择一个选项。为此,我确实遵循以下链接的数据结构方法,主要是嵌套使用_value_1方法
http://docs.python-zeep.org/en/master/datastructures.html
所以我写的代码就像这样
element = client.get_element('ns2:getSubscriptionDetail')
element_value = element(_value_1={'uno' : 'numeroUno', 'dos':'numeroDos' , 'tres': 'numeroTres', 'cuatro': 'numeroCuatro'})
但是当我运行我的python时,我收到了这个错误:
TypeError: {ns0}getSubscriptionDetail() got an unexpected keyword argument '_value_1'. Signature: `({uno: xsd:string} | {dos: {ns0}ImsiType} | {tres: {ns0}E164Type} | {cuatro: xsd:string})`
为什么 value1 是意外的参数?有什么想法吗?
PD:我的类型getDetail在xsd:sequence中有xsd:choice,在zeep文档中,类型是颠倒的。这很重要吗?我无法改变我的WSDL