首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Mongoose中,concat之后的save不执行任何操作

在Mongoose中,concat之后的save不执行任何操作
EN

Stack Overflow用户
提问于 2019-07-05 23:30:18
回答 1查看 122关注 0票数 1

我使用的是Mongoos4.9.1和MongoDB 2.2.33。由于不再支持推送,因此我使用concat将元素添加到模型的数组中。我保存了,一切都正常,但是更新后的对象没有我添加到数组中的元素。

代码语言:javascript
复制
hotel.reviews.concat([{
        name : req.body.name,
        rating : parseInt(req.body.rating, 10),
        review : req.body.review
    }]);

    hotel.save(function(err, hotelUpdated) {
       if (err) {
           console.log("Error adding review");
           res
               .status(500)
               .json(err);
       } else {
           res
               .status(201)
               .json(hotelUpdated);
           //.reviews[hotelUpdated.reviews.length - 1]
       }
    });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-05 23:35:48

你试过了吗:

代码语言:javascript
复制
const item =  {
        name : req.body.name,
        rating : parseInt(req.body.rating, 10),
        review : req.body.review
    };


HotelModel.
findOneAndUpdate({ _id : hotel._id}, {$push:{reviews:item},{new : true},(err, doc) => {

    if(err){
        console.log("Something wrong when updating data!");
    }

    console.log(doc);
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56905848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档