簡體   English   中英

使用動態查詢在節點中使用mongoose更新多個記錄

[英]update multiple records using mongoose in node with dynamic query

我已經通過以下答案: - 使用節點中的mongoosejs更新多個記錄

使用不同的值更新多個文檔

但在我的情況下,我的查詢是動態的,意味着我需要基於obj動態查詢,我也不確定forEach是否是一個goof解決方案是否有更好的替代方案,因為這每次花費太多時間。

     req.body.forEach(function (obj) {
    myModel.find(
        {
            country: obj.country,
            product: obj.product,
            month: parseInt(obj.month),

        }
    ).update({
            $set: {
                value: parseInt(obj.value),
                'lastmodified': Date.now()
            }
        },
        { upsert: true},
        function (err) {
            //callback();
            if (err) {
                return res.status(500).send(err);
            }
            return res.status(200);
        }
    );

不知道這是否有用但看起來你不確定解析req.body來查找文檔。 這只是偽代碼。 也許它會給你一個想法。

app.put("/post", function(req, res){
    myModel.find({
        country : req.body.country,
        product : req.body.product,
        month : parseInt(req.body.month)
    })
    myModel.save(function(err, results){
        if(err) console.log(err);
        console.log(results)
        res.send(results)
    })
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM