【问题标题】:unable to trigger flask restless postprocessor无法触发烧瓶不安分的后处理器
【发布时间】:2016-05-21 17:45:12
【问题描述】:

我正在使用Flask-Restless 0.17.0,但无法触发preprocessor or postprocessor function。作为参考,我有一个 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]},
)

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

【问题讨论】:

    标签: python flask-sqlalchemy flask-restless


    【解决方案1】:

    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]}

    参考资料:

    【讨论】:

    • 感谢您的帮助@Robᵩ。我正在查看latest 文档(来自谷歌的默认文档),它显然对 API 进行了相当大的更改。我尝试在源代码中四处寻找,但在我的烧瓶 n00bness 中迷失了。
    • 我在 Flask-Restless 页面上发布了一个 github 问题,以更好地捕获文档的版本控制。再次感谢您的帮助github.com/jfinkels/flask-restless/issues/485
    猜你喜欢
    • 2020-07-04
    • 1970-01-01
    • 2019-01-02
    • 2014-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-11
    • 1970-01-01
    相关资源
    最近更新 更多