[英]Get affected records with mongoose update command
使用multi:true選項執行貓鼬更新命令時,如何獲取數據庫中受影響記錄的ID?
MyModel.update({ age: { $gt: 18 } }, { oldEnough: true }, { multi: true }, function (err, raw) {
if (err) return handleError(err);
console.log('The raw response from Mongo was ', raw);
});
這將返回受影響的文檔數,但是如何在不運行數據庫內部另一個查詢的情況下知道它們的ID?
具有或不具有multi: true
選項的更新操作將返回WriteResult
,該結果沒有包含此類詳細信息的屬性。 只有各種計數。
當談到貓鼬時,根據他們的文檔,您只能在成功的回調中得到err
和rawResponse
:
回調函數接收(err,rawResponse)。
如果發生了任何錯誤,則err為錯誤rawResponse是來自Mongo的完整響應
因此,您基本上可以從mongo獲得WriteResult
,僅此而已。
因此, 沒有你不能得到更新的方便列表_id
雖然你很可能做的事情post
更新中間件,你可以運行filter
更新的一部分,並存儲一些_ids我猜審計等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.