应该可以用聚合操作,或使用$not 操作,这里使用的是先取出真值然后再次更改,需要两次数据库操作
collection.find({_id:ObjectID(_id)}).toArray((err,result)=>{
if(err){
res.send({err:1,msg:"没找到数据",data:err})
console.log(err)
mgdb.close()
}else{
console.log(result[0])
collection.updateOne({_id:ObjectID(_id)},{$set:{"isadd":!result[0].isadd}},(err,reply)=>{
if(err) {
console.log(err)
res.send({err:1,msg:"更新失败",data:err})
mgdb.close()
}else{
res.send({err:0,msg:"操作成功",data:reply})
mgdb.close()
}
})
}