如何使用ejs中的按钮通过_id查找和更新记录(MongoDB)?

时间:2019-03-27 11:33:39

标签: node.js mongodb ejs

我试图通过单击使用ejs模板呈现的按钮来更新Mongodb中的记录。 我将有两个按钮,一个接受按钮,它将“ Booked”属性更新为“ true”,将“ requested”属性更新为false。 拒绝按钮,该按钮会将“已预订”和“已请求”属性都更新为false。

现在,即时消息仅在接受按钮上起作用,其ID无效。这是ejs文件的脚本部分:

app.put('/dashboard/requests/details/:id', function acceptReq(req, res){
    const reqID = req.params.id;
    var query = { _id: ObjectId(reqID)};
    console.log(reqID)

    db.getDB().collection(collection).findOneAndUpdate({query}, { $set: { 
        requested: false,
        requests:{
        user: undefined,
        time: undefined
        },
        Booked:true

        }}, { returnOriginal: false }, (err, result) => {
        if (err)
            console.log(err);
        else {
            req.flash(
            'success_msg',
            'Request Accepted!'
            );
            res.redirect('/dashboard/requests')
            }
    });
});

我现在暂时手动插入记录_id,但是,我希望将记录_id设置为变量并将其插入到访存函数中。

这是我在app.js中的put方法:

User::find(1)->token()->update(['token' => $new_token]);

console.log将在我的控制台中打印reqID,但是,似乎没有发生数据库的更新。 我在做什么错了?

0 个答案:

没有答案