Query#update
किसी options
को स्वीकार नहीं करता पैरामीटर, लेकिन Model.update
करता है। तो आप इसे इस प्रकार फिर से लिखना चाहेंगे:
Page.update({status:'queued'}, {status: 'active'}, {multi: true},
function(err, num) {
console.log("updated "+num);
}
);
मुझे यकीन नहीं है कि आप limit
. के साथ क्या करने का प्रयास कर रहे थे श्रृंखला में कॉल करें, लेकिन आप उसका उपयोग अपडेट में नहीं कर सकते।
अपडेट करें
उपरोक्त क्वेरी उन सभी दस्तावेज़ों को अपडेट कर देगी जहां {status: 'queued'}
. update
. के साथ आपका एकमात्र विकल्प केवल पहले मेल खाने वाले हैं {multi: false}
या सभी मैच {multi: true}
।
ऐसा लगता है कि आपको एक-एक करके दस्तावेज़ों को अपनी कतार से हटाने और findOneAndUpdate
update
. के बजाय इसलिए आपके पास उस दस्तावेज़ तक पहुंच है जिसे आपने 'queued'
. से अपडेट किया है करने के लिए 'active'
।