यदि आप new Mongo.Collection('col')
. के साथ उल्का संग्रह बनाते हैं आपको एक मिनिमोंगो इंस्टेंस वापस मिलता है जो मूल नोड मोंगोड्राइवर नहीं है, है ना?
तो कुछ तरीके काम नहीं करते या पूरी तरह से समर्थित नहीं हैं.. जैसे collection.aggregate
लेकिन आप Col.rawCollection()
. के जरिए आसानी से नेटिव ड्राइवर तक पहुंच सकते हैं और अपनी क्वेरी को सीधे मूल उदाहरण पर निष्पादित करें। मूल उदाहरण केवल सर्वर पर ही पहुंच योग्य है, निश्चित रूप से ।
तो आप जो चाहते हैं उसे करने के लिए आपके पास कई तरीके हैं, उदाहरण के लिए आप पहले सरणी ले सकते हैं, इसका सहारा ले सकते हैं और
$set: {my_array: sortedArray }
व्यक्तिगत रूप से मैं इस तरह से पसंद करूंगा क्योंकि आपको दो के बजाय केवल एक अपडेट ऑपरेशन करने की आवश्यकता है ($pull
और $push at $position
)
लेकिन अगर आप इसे करना चाहते हैं तो $push at $position रास्ता.. बस इसे मूल ड्राइवर के साथ करें
var col = Collection.rawCollection();
var result = Meteor.wrapAsync(col.update.bind(col)(
/* update query goes here */
);
नोट:उल्का सिंक शैली के कारण आपको Meteor.wrapAsync की आवश्यकता है, आप इसे इसके बिना भी कर सकते हैं। Collection.rawCollection().update(...)