3

GET_MANY 预处理器接受内置search_params字典,但 GET_SINGLE 只接受instance_id. 一个kw**arg 被传递给所有预处理器和后处理器,但我发现这只是为了向前兼容,尽管这在Flask-Restless 文档中有些不清楚:

预处理器和后处理器函数的参数将作为关键字参数提供,因此在定义预处理器或后处理器函数时,应始终添加 **kw 作为最终参数。这样,您可以在定义函数时只指定您需要的关键字参数。此外,如果新版本的 Flask-Restless 更改了 API,您可以在不破坏代码的情况下更新 Flask-Restless。

那么除了instance_idGET_SINGLE 预处理器之外,是否不能传递参数?

编辑

也许有更好的方法来做我想做的事情:我有两个模型,Foo并且Bar. 中的记录将 中记录Foo的外键存储为其列之一Bar。我想要一个 GET 请求发送到Foo该请求,该请求指定外键的值,以从具有请求值的外键的记录集中返回单个准随机记录Foo

4

1 回答 1

1

正如@1.618 所指出的,我的特定用例更适合 GET_MANY 请求,即使我只期望一个项目作为响应。我仍然不确定我最初问题的答案,但我的直觉是,不,没有办法将参数传递给 GET_SINGLE 请求,因为在 Flask-restless 中,它们仅适用于查询项目的场景按身份证。

我的特定问题的解决方案是改用 GET_MANY 请求,我最初尝试过但由于我错误地操纵search_params参数以及我对如何在 Python 中传递变量感到困惑而无法开始工作。

于 2015-04-06T20:55:28.743 回答