Javascript 环回-基于id以外的其他属性的REST upsert/update
例如,我的环回模型如下所示:Javascript 环回-基于id以外的其他属性的REST upsert/update,javascript,rest,loopbackjs,Javascript,Rest,Loopbackjs,例如,我的环回模型如下所示: ╔═══════╦════════╗ ║ id ║ Number ║ ║ name ║ String ║ ║ prop1 ║ Number ║ ║ prop2 ║ Number ║ ╚═══════╩════════╝ ╔═══════╦═════╗ ║ id ║ 22 ║ ║ name ║ Foo ║ ║ prop1 ║ 2 ║ ║ prop2 ║ 4 ║ ╚═══════╩═════╝ Prop 1和Prop 2的组合必须是唯一的
╔═══════╦════════╗
║ id ║ Number ║
║ name ║ String ║
║ prop1 ║ Number ║
║ prop2 ║ Number ║
╚═══════╩════════╝
╔═══════╦═════╗
║ id ║ 22 ║
║ name ║ Foo ║
║ prop1 ║ 2 ║
║ prop2 ║ 4 ║
╚═══════╩═════╝
Prop 1和Prop 2的组合必须是唯一的
然后我有一张这样的记录:
╔═══════╦════════╗
║ id ║ Number ║
║ name ║ String ║
║ prop1 ║ Number ║
║ prop2 ║ Number ║
╚═══════╩════════╝
╔═══════╦═════╗
║ id ║ 22 ║
║ name ║ Foo ║
║ prop1 ║ 2 ║
║ prop2 ║ 4 ║
╚═══════╩═════╝
我不想通过ID来升级插入,而是通过组合prop 1和prop 2来升级插入。例如,当我发送实体
{
"name": "Bar",
"prop1": 2,
"prop2": 4
}
它应该找到组合了prop1和prop2的记录,并将名称更改为Bar。如果尚未存在具有此组合的记录,则应创建新记录
有一个REST方法(方法:PUT,路径:“/”),它只按ID进行upsert(据我所知)。只需调用
/?filter[where][prop1]=2&filter[where][prop2]=4
使用PUT
方法和
{
"name": "Bar"
}
身体
来源:本文档介绍了使用环回执行此操作的正确方法: 您必须执行POST请求,而不是PUT,才能使用开箱即用的环回行为完成此操作,如下所示:
POST /dogs/update?where[color]=blue '{"color":"orange"}'
嘿,那张桌子很有趣。。你是怎么做到的?某种自动工具?看看
补丁
动词,我认为它对应于这种行为。阿米特·乔基:这是一种手工操作,基于。戴:你能给我一些文档链接吗?戴:不幸的是,我认为不支持PATCH
动词。