0

私はこのサービスを持っています:

class CategoryService(ServiceBase):

    @rpc(Array(Integer(min_occurs=1, max_occurs='unbounded', nillable=False), **MANDATORY),
         _returns=Iterable(Category, **MANDATORY))
    def get_subcategories_by_path(ctx, category_path):
        ...

これは、WSDL では次のように示されます。

<xs:complexType name="get_subcategories_by_path">
  <xs:sequence>
    <xs:element name="category_path" type="tns:integerArray"/>
  </xs:sequence>
</xs:complexType>
<xs:complexType name="integerArray">
  <xs:sequence>
    <xs:element name="integer" type="xs:integer" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
  </xs:sequence>
</xs:complexType>

category_path引数を 1 つ以上の整数の配列にしたいのですが、うまくいきArray(Integer(min_occurs=1, max_occurs='unbounded', nillable=False)ません。

4

1 に答える 1

1

Arrayラップされた配列型用です。単純なものを取得するには、タイプ マーカーを直接使用する必要があります。次のようにしてください。

class CategoryService(ServiceBase):
    @rpc(Integer(min_occurs=1, max_occurs='unbounded', nillable=False)),
                                        _returns=Iterable(Category, **MANDATORY))
    def get_subcategories_by_path(ctx, category_path):
        # (...)
于 2013-08-30T06:05:01.407 に答える