我目前正在使用Flask,Flask-sqlalchemy和flask-restless开发REST API。
我有一个User模型和一个Category模型。用户可以具有多个类别,并且类别仅属于一个用户(一对多关系)。该关系在sqlalchemy模型中设置。
我正在使用flask-restless来创建api。例如,我有以下行来创建User 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 / categories进行POST请求并获取
状态代码:405方法不允许,允许:OPTIONS,HEAD,GET
显然,只允许OPTIONS,HEAD和GET请求,但在创建api时,我确实包含了POST。
你们有任何想法是什么问题吗?或者如何扩展api以允许在烧瓶中使用POST方法?
答案 0 :(得分:0)
如果要向现有用户添加新类别,则应将PUT / PATCH请求发送至:
/api/users/3
请求数据如下所示:
{ "categories":
{
"add": [ {"field1": "val1", "field2": "val2"} ]
}
}