【问题标题】:Decrement a field and delete entire object if field's value reaches to 0 in mongoose如果字段的值在猫鼬中达到 0,则减少字段并删除整个对象
【发布时间】:2020-10-05 01:25:05
【问题描述】:

我正在尝试创建一个聊天室机制,为此我正在使用 nodejs、mongodb 和 mangoose。 如果“count”字段达到“0”,我想删除整行。

到目前为止,我有这个函数可以成功增加和减少计数字段,但是想在计数=0时删除对象。如何使用以下方法实现此目的。

function addOrRemoveFromRoom(mRoom, userCount) {
        ModelRooms.findByIdAndUpdate(mRoom.id, {
            $inc: { count: userCount },
            $addToSet: {
                "users": {
                    $each: [mUser],
                }
            }
        }, { returnOriginal: false }, function (err, doc) {
            if (err) {
                logger.error("Error occured", err);
            }
            else {
                logger.info("Success", mRoom.roomName);                
            }
        });
    }

这是我的架构

let roomsSchema = new mongoose.Schema({
    roomName: String,
    count: {
        type: Number,
        min: 0
    },
    createdAt: {
        type: Date,
        default: Date.now
    },
    users: [
        {
            userId: String,            
            created: {
                type: Date,
                default: Date.now
            }
        }
    ]
});

如果 count 字段达到 0(零),我如何删除整个对象

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-07
      • 2016-03-24
      • 2021-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 2019-09-14
      相关资源
      最近更新 更多