Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 环回-基于id以外的其他属性的REST upsert/update_Javascript_Rest_Loopbackjs - Fatal编程技术网

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 1Prop 2的组合必须是唯一的

然后我有一张这样的记录:

╔═══════╦════════╗
║ id    ║ Number ║
║ name  ║ String ║
║ prop1 ║ Number ║
║ prop2 ║ Number ║
╚═══════╩════════╝
╔═══════╦═════╗
║ id    ║ 22  ║
║ name  ║ Foo ║
║ prop1 ║ 2   ║
║ prop2 ║ 4   ║
╚═══════╩═════╝
我不想通过ID来升级插入,而是通过组合prop 1prop 2来升级插入。例如,当我发送实体

{
    "name": "Bar",
    "prop1": 2,
    "prop2": 4
}
它应该找到组合了prop1prop2的记录,并将名称更改为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
动词。