MongoDB通过nodeJS中的索引来更新文档的数组元素
如何在Meteor或nodeJS中增加一个MongoDB文档数组的特定元素的值?
说,我有以下文件:
{ "_id" : "4tP6ewe4Z5kwYA3Je", "name" : "chutia", "address" : "shonir akhra", "itemCount" : "4", "items" : [ "3", "4", "13", "24" ] }
我需要增加items
数组的第n
个元素。 其中n
是一个variables。
正如这里logging的https://docs.mongodb.com/manual/reference/operator/update/inc/ ,你可以通过点符号在数组中增加一个元素。
以下示例将项目的第一个元素增加1。
db.<collection>.update( <query>, { $inc: { "items.0": 1 } } )
正确的做法是:
{$inc: {[`items.${idx}`]: 1}}
其中idx
是数组索引。 致谢MasterAM的评论