我目前正在开发一个使用 Flask、Flask-sqlalchemy 和 flask-restless 的 REST API。
我有一个用户模型和一个类别模型。一个用户可以有多个类别,一个类别只属于一个用户(一对多关系)。该关系在 sqllchemy 模型中建立。
我正在使用烧瓶不安分来创建 api。例如,我有以下行来创建用户 api:
manager.create_api('User', collection_name='users', methods=['GET','POST','PUT','DELETE'])
当我在/api/users 上执行 GET 请求或 POST 请求时,一切正常。
当我在/api/users/3/categories上执行 GET 请求时,它也可以工作。
但是,我无法在/api/users/3/category 上发出 POST 请求并获得
状态代码:405方法不允许,允许:选项,头,获取
显然,只允许选项,HEAD和GET请求,但是在创建API时,我确实包含了POST。
你们知道问题是什么吗?或者如何扩展 api 以允许 POST 方法在烧瓶不安分中?
向现有用户添加新类别,则应将 PUT/PATCH 请求发送到:
/api/users/3
请求数据如下所示:
{ "categories":
{
"add": [ {"field1": "val1", "field2": "val2"} ]
}
}