提问者:小点点

保存在mongodb中,并将创建的对象传递给函数


我是编程的初学者,我不知道我如何做一些与猫鼬保存的结果。 在我的postendpoint中,我不想保存并直接返回,而是想对save方法的结果做一些事情,比如获取创建的新对象的_id值并传递给一个函数。

下面是我的postendpoint正在做的事情,我希望在保存后不返回,而是调用一个传递所创建的签出对象的函数:

router.post('/', async function(req, res) {
    const { checkinId, eventId, email } = req.body;
    let CheckoutTest = {
        checkinId: checkinId,
        eventId: eventId, 
        email: email,
    } 
    const newCheckout = new Checkout(CheckoutTest);
    await newCheckout.save((err, checkout) => {
        if(err) {
           return res.status(400)
           .send(err);
        }else {
           return res.status(200)
           .json({message: "Checkout successfully added!", checkout});
        }
    })
});

共1个答案

匿名用户

您可以简单地创建所需的函数,并根据save方法传递的对象将结果ID传递给函数。 像这样的东西应该管用。

router.post('/', async function(req, res) {
const { checkinId, eventId, email } = req.body;
let CheckoutTest = {
    checkinId: checkinId,
    eventId: eventId, 
    email: email,
} 
const newCheckout = new Checkout(CheckoutTest);

await newCheckout.save((err, checkout) => {
    if(err) {
       return res.status(400)
       .send(err);
    }else {

       someMethod(checkout.checkinId);  

       return res.status(200)
       .json({message: "Checkout successfully added!", checkout});
    }
  })
});

someMethod(id) {
    console.log(id);
}