如何使用 MongoDB 将新属性插入到对象中

How to insert a new property into a object using MongoDB

提问人:treeqr 提问时间:6/20/2023 更新时间:6/20/2023 访问量:31

问:

我想在我的对象中添加另一个属性(我想为反通道和角色执行此操作,我在这里包含了架构)。Toggle

法典

await config.findOneAndUpdate({ GuildID: GuildId }, { $set: { AntiChannels: { Toggle: "Enabled" } } }, { returnOriginal: true })

图式

AntiChannels: {
 Toggle: { type: String },
 Actions: { Type: Number },
 Time: { Type: Number },
},
AntiRoles: {
 Toggle: { type: String },
 Actions: { Type: Number },
 Time: { Type: Number },
}

I would like to add my Toggle property inside this Object but it just removes everything else in the Object.

我以为这也会返回文档中的原始数据,但似乎并没有这样做。我该怎么做?returnOriginal

此外,当我执行此代码时,会发生什么情况是,上面的图像中的所有内容都被删除并添加了 Toggle 属性。我只想包括其他属性,而不是删除它们。谢谢:)

JavaScript 节点.js MongoDB 对象

评论

1赞 nimrod serok 6/20/2023
尝试:await config.findOneAndUpdate({ GuildID: GuildId }, { $set: { AntiChannels.Toggle: "Enabled"} }, { returnOriginal: true })
1赞 treeqr 6/20/2023
您在此处拥有的正确代码示例实际上给出了语法错误,正确的代码是: 尽管如此,这确实有效,我以为我以前尝试过这样的事情,但谢谢:)await config.findOneAndUpdate({ GuildID: GuildId },{ $set: { 'AntiChannels.Toggle': 'Enabled' } },{ returnOriginal: true });

答: 暂无答案