如何将 Mongoose 中的布尔字段更新为相反的字段?

tmw*_*wrp 2 mongoose mongodb node.js mongodb-query

所以我有这个功能:

async function update_subscription_status(id) {
    await User.updateOne({chat_id: id}, {
        mailing: // need to change this boolean field to its opposite       
    })
}
Run Code Online (Sandbox Code Playgroud)

有什么方法可以在更新之前不检查其状态吗?

Tus*_*har 5

使用带有聚合管道的更新文档

$设置

$eq返回 true 或 false

async function update_subscription_status(id) {
    await User.updateOne(
      { chat_id: id },
      [ { "$set": { "mailing": { "$eq": [false, "$mailing"] } } } ]
    )
}
Run Code Online (Sandbox Code Playgroud)