MongoDB 递增子对象中的变量

MongoDB increment a variable in a subobject

我想增加位于 mongodb 数据库的子对象等中的变量。

这是我的代码:

let collection = mongoose.db("wars").collection("servers")
collection.findOneAndUpdate({"id": message.guild.id}, {$inc: {"starship.$.": 1}})

在“starship”对象中还有一些其他字段,都以整数作为值。
我需要做的是从变量更新字段。

示例:

let example = "test"
let collection = mongoose.db("wars").collection("servers")
collection.findOneAndUpdate({"id": message.guild.id}, {$inc: {"starship.$." + example: 1}})

但是“+”会出错,因为我无法从变量访问该字段。
我也尝试过 starship.$.${example},但没有用。
我该怎么办?

感谢您的帮助,抱歉英语不好!

您可以创建一个新对象并将其放入 MongoDB 查询中,例如:

let example = "test";
let newObject={};
newObject["starship.$." + example] = 1;
let collection = mongoose.db("wars").collection("servers");
collection.findOneAndUpdate({"id": message.guild.id}, {$inc: newObject});