如何使用Node驱动程序将对象推送到Mongo中的Array

时间:2016-10-26 20:26:19

标签: node.js mongodb

我正在学习MongoDB和Node并尝试在没有任何ORM(如Mongoose)的情况下制作一个crud应用程序。

我在将对象插入到作为文档一部分的数组时遇到问题。

基本上我想在每次用户购买产品时向“产品”文档的“订单”属性添加“订单”。     的console.log(req.session.cartitems);     的console.log(req.session.cartqty);

for(item in req.session.cartitems)
    {
        console.log(req.session.cartitems[item]);

        var orderedItem = req.session.cartitems[item];
        mongo.connect(mongoURL, function(){
        console.log('Connected to mongo at: ' + mongoURL);
        var coll = mongo.collection('products');

        coll.update({_id:orderedItem._id},{
            $push: {
                orders: {
                        buyer: req.session.username,
                        quantity:orderedItem.item_quantity
                        }
                  }
        });
    });
}

但更新操作没有做任何事情。

以下是Mongo中我想要推送的示例对象:

{
"_id" : ObjectId("5810a2b01ef60d0cdcc6e80c"),
"product_id" : 1,
"item_name" : "FitBit Charge 2",
"item_description" : "Charge HR + PurePulse Monitor",
"seller_name" : "ak@gmail.com",
"item_price" : "150",
"item_quantity" : "10",
"sale_type" : "sale",
"posted_at" : "2016:10:26 05:33:52",
"expires_at" : "2016:10:30 05:33:52",
"bids" : [],
"orders" : []

}

0 个答案:

没有答案