नहीं हटाता है मैं निम्नलिखित नेवला मॉडल है:नेवला findByIdAndUpdate अद्यतन गुण
var mongoose = require('mongoose');
var userSchema = mongoose.Schema({
facebook: {
name: String,
email: String,
customerId: String
}
});
var User = mongoose.model('User', userSchema);
जब मैं का उपयोग कर findByIdAndUpdate
User.findByIdAndUpdate(id, {
$set: {
facebook: {
name: name
}
}
});
name
अद्यतन हो जाता है इस दस्तावेज़ का एक हिस्सा अद्यतन करते हैं, जबकि email
और customerId
भी निकल जाते हैं (सेट नहीं?)।
मुझे यह दस्तावेज नहीं मिला।
क्या findByIdAndUpdate
के साथ केवल विशिष्ट दस्तावेज़ गुणों को अपडेट करने का कोई तरीका है?
हाँ, धन्यवाद। मैंने इसे खुद को मोंगोड डॉक्स में पाया। क्या मुझे $ सेट का उपयोग करना है? – krl
बेशक हाँ यदि आप $ सेट का उपयोग नहीं करते हैं तो यह दस्तावेज़ को सभी पुराने फ़ील्ड को निकालने के लिए केवल ऑब्जेक्ट अपडेट करने के लिए अपडेट करेगा। –
अच्छा, यह नहीं है। मैंने बस इस तरह सेट किए बिना इसका परीक्षण किया: User.findByIdAndUpdate (id, {'facebook.name': name}) और यह सभी पुराने फ़ील्ड रखे। – krl