如何在Node.js中使用Mongoose更新嵌套JSON数组的可选字段
更新用户农场可选字段的实操说明
嘿,关于更新用户名下农场的可选字段,咱们得先把核心逻辑搞明白:只传要改的字段就行,不用提交整个农场对象。
比如用户只想把农场名称从"Farm 1"改成"Farm 99",那发送的JSON数据就这么简单:
{ "name": "Farm 99" }
多农场用户的数据示例
下面是一个拥有两个农场的用户数据参考(省略了部分非核心字段):
"farms": [ { "extension": { "extension": 22, "measure": "Hectares" }, "animals": [], "outs": [], "plans": [], "_id": "5ae64b9f9564b42d31e5bb99", "name": "Farm 1", "createdAt": "2018-04-29T22:47:59.514Z", "updatedAt": "2018-04-29T22:47:59.514Z" }, // 第二个农场的结构和第一个一致,这里省略具体内容 ]
关键提醒
- 更新的时候一定要通过农场的
_id来精准定位要修改的农场,别不小心改了其他农场的数据 - 后端处理这类请求时,记得用部分更新的操作语法(比如MongoDB里的
$set),这样只会修改你传入的字段,不会把其他没提交的属性给覆盖掉
内容的提问来源于stack exchange,提问作者alex22596
相关产品推荐
相关产品推荐

