1

我正在使用Flask-Restless0.17.0 并且无法启动预处理器或后处理器功能。作为参考,我有一个 SQLAlchemy 模型,如下所示:

class Transaction(Base):
    id = Column(Integer, primary_key=True)
    name = Column(Unicode)
    description = Column(Unicode)

我可以毫无问题地注册 API 端点,但我无法让这个hello_world后处理器在我的一生中打印“hello world”:

def hello_world(**kwargs):
    print 'hello world'

manager.create_api(
    fraud.data.Transaction
    methods=['GET', 'POST', 'DELETE'],
    postprocessors={'POST_RESOURCE': [hello_world]},
)

我错过了什么吗?任何指针,提示等将不胜感激!

4

1 回答 1

4

0.17.0 版不支持POST_RESOURCE. 支持的后处理器类型似乎是:

  • 'GET_SINGLE'请求获取模型的单个实例。
  • 'GET_MANY'用于获取 * 模型实例的整个集合的请求。
  • 'PATCH_SINGLE' or'PUT_SINGLE'` 用于修补模型的单个实例的请求。
  • 'PATCH_MANY''PATCH_SINGLE'请求修补模型的整个实例集合。
  • 'POST'请求发布模型的新实例。
  • 'DELETE_SINGLE'
  • 'DELETE_MANY'

对于您的使用情况,请尝试postprocessors={'POST': [hello_world]}.

参考:

于 2016-02-11T06:08:00.427 回答