我正在使用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]},
)
我错过了什么吗?任何指针,提示等都将非常感激!
答案 0 :(得分: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]}
。
参考文献: