无法触发烧瓶不安分的后处理器
Posted
技术标签:
【中文标题】无法触发烧瓶不安分的后处理器【英文标题】: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],
)
我错过了什么吗?任何指针、提示等将不胜感激!
【问题讨论】:
【参考方案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]
。
参考资料:
http://flask-restless.readthedocs.org/en/0.12.0/customizing.html#request-preprocessors-and-postprocessors https://github.com/jfinkels/flask-restless/blob/0.17.0/flask_restless/views.py【讨论】:
感谢您的帮助@Robᵩ。我正在查看latest
文档(来自谷歌的默认文档),它显然对 API 进行了相当大的更改。我尝试在源代码中四处寻找,但在我的烧瓶 n00bness 中迷失了。
我在 Flask-Restless 页面上发布了一个 github 问题,以更好地捕获文档的版本控制。再次感谢您的帮助github.com/jfinkels/flask-restless/issues/485以上是关于无法触发烧瓶不安分的后处理器的主要内容,如果未能解决你的问题,请参考以下文章