【发布时间】:2017-07-13 09:51:41
【问题描述】:
我正在尝试更新包含 Mongo DB 中的数组的对象。这个对象看起来像:
{id: 'idString',
propA: propA,
arrayB: [{propC: propC}, {propC: propD}, {propC: propE}]
我想发送更新请求:
{id: 'idString',
propA: propA,
arrayB: [{propC: propABC}, {propC: propD}, {propC: propE}]
我可以通过这样做来让它工作:
Object
.findByIdAndUpdate(req.params.id, {$set: req.body}})
白色的请求正文是:
{id: 'idString',
propA: propA,
arrayB: [{propC: propABC}, {propC: propD}, {propC: propE}]
但是有没有一种方法可以在请求正文只是时发送请求:
{id: 'idString',
arrayB: [{propC: propABC}]
如果我只更新此数组中的一项,我不必包含整个数组?现在,如果我确实 findByIdAndUpdate 并将上面作为请求正文发送,如果请求正文中未提及它们,它将删除数组的其余部分。
【问题讨论】:
标签: javascript node.js mongodb api mongoose