जैसा कि त्रुटि इंगित करती है, क्लाइंट पर आप केवल एक साधारण _id
. के साथ अपडेट कर सकते हैं चयनकर्ता। मैं आपके कोड में थोड़े से संशोधन के साथ एक विधि का उपयोग करने की सलाह दूंगा:
Meteor.methods({
incClicks: function(id, news) {
check(id, String);
check(news, Match.ObjectIncluding({link: String}));
News.update(
{_id: id, 'items.link': news.link},
{$inc: {'items.$.clicks': 1}}
);
}
});
यहां हम $
. का उपयोग कर रहे हैं विशिष्ट एम्बेडेड दस्तावेज़ को अद्यतन करने के लिए ऑपरेटर। अधिक विवरण के लिए दस्तावेज़ देखें।