Как добавить несколько однородных дочерних элементов в объект Zeep - PullRequest
0 голосов
/ 06 марта 2019

Очень легко создать объект Zeep с разнородными элементами, например:

<A>
  <B>
    <C>foo</C>
    <D>bar</D>
  </B>
  <E>
    <C>foo</C>
    <D>bar</D>
  </E>
</A>

Создается с помощью (и это иллюстрирует различные способы):

A(
  B={"C": "foo", "D": "bar"},
  E={"C": "foo", "D": "bar"},
)

Чтонеясно, как вы собираетесь создавать структуру с однородными элементами, подобными этой:

<A>
  <B>
    <C>foo</C>
    <D>bar</D>
  </B>
  <B>
    <C>foo</C>
    <D>bar</D>
  </B>
</A>

Как вы представляете это с типами клиентов Zeep?

1 Ответ

0 голосов
/ 25 марта 2019

Искал это несколько недель назад, и у него есть разумный ответ.

<A>
  <B>
    <C>foo</C>
    <D>bar</D>
  </B>
  <B>
    <E>far</E>
    <F>boo</F>
  </B>
</A>

будет представлен как zeep-подобный dict с list of dicts в качестве значения

dic = dict(
  A=dict(
    B=[
      {"C": "foo", "D": "bar"},
      {"E": "far", "F": "boo"},
    ]
  )
)

: яй:

также нашел это здесь , так что, вероятно, дубликат?

...