FlaskEnterprise soap如何返回类

2024-09-30 01:35:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用FlaskEnterprise,但我找不到任何文档或示例。如果我想返回原语类型是很容易的,但是如果我想返回类,我就做不到。在

from soaplib.core.model.clazz import ClassModelBase
from flaskext.enterprise import Enterprise
from flask import Flask, render_template

#config Flask Enterprise
enterprise = Enterprise(app)
String = enterprise._sp.String
Integer = enterprise._sp.Integer
Boolean = enterprise._sp.Boolean
Array = enterprise._scls.Array

class T(ClassModelBase):
  date=""
  time=""

class Service(enterprise.SOAPService):
  """Soap Service Class

 Attributes:
    __soap_target_namespace__ : namespace for soap service
    __soap_server_address__ : address of soap service
  """
  __soap_target_namespace__ = 'TNS'
  __soap_server_address__ = '/soap'

@enterprise.soap(String, _returns=Integer)
def reg(self, strIdent):
  """ 
  Args:
    strIdent : string
  Returns:
    retrurn an int
  """
  return 1

@enterprise.soap(String,_returns=Array(T))
def getT(self, strIdent):
    """ 
    Args:
        strIdent : string

    Returns:
        return an array of classes
    """
    arr=[]
    arr.append(T(date="12.09.", time="17:00"))
    arr.append(T(date="13.09.", time="18:00"))
    return arr

服务注册表正常工作,服务getT出错

^{pr2}$

Tags: fromimportdatestringtimeaddressintegernamespace
1条回答
网友
1楼 · 发布于 2024-09-30 01:35:11

将T类声明为(我希望日期和时间是字符串,否则用任何基元类型替换它)

from soaplib.core.model.clazz import ClassModel

class T(ClassModel):
  date = String
  time = String

剩下的代码是正确的。它应该有用

相关问题 更多 >

    热门问题