我在Node.js中工作,並試圖將數組的內容推送或拉入到我的mongodb集合中。目前我的工作[]代碼,以從FieldArray陣列拉物體看起來是這樣的:在批量操作中更新變量數組中的MongoDB數組?
for (var i=0; i < MyList.length; i++) {
collection.update(
{field:"MyValue"},
{$pull: {FieldArray: MyList[i]}},
function(err, item){...}
);
}
我所知,使用$推的能力/每個$,$ addToSet/$每$ pullall但他們似乎並沒有從數組中動態地接受數值(或者我沒有發現它可以)。基本上,我希望能夠使用適當的批處理調用,使用一個或一百個數組的這個函數。
是否有任何方法可以進行此類調用,而無需在每次迭代中循環通過數據庫的單獨調用?
你是什麼意思的動態數組?對於你的情況'{$ push:{FieldArray:{$ each:MyList}}}'完全可以工作。您不需要遍歷數組。 –
動態的大小,使我不能總是具體像MyList [1]或MyList [5],因爲它可能不存在。如果你所說的話是真的(我毫不懷疑它是這樣),那麼當我嘗試這個時,我一定會做錯事,或者我認爲我嘗試過了。將再次嘗試並回報,謝謝! – squid808