U kunt het doen, maar het probleem is dat bij het benaderen van het onderliggende verzamelobject vanuit het basisstuurprogramma niet dezelfde voorzorgsmaatregelen worden genomen als bij de geïmplementeerde mangoestmodelmethoden.
Alle modelmethoden verpakken de onderliggende methoden met andere functies, maar de meest voorkomende is ervoor te zorgen dat een databaseverbinding open is voordat u toegang probeert te krijgen tot de methode. Dit zorgt ervoor dat een Db
instantie is aanwezig en een Collection()
object kan worden verkregen
Zodra u de .collection
. gebruikt accessoire op het model, dan doet u het helemaal alleen:
mongoose.connection.on('open',function(err,conn) {
// now it's safe to use
// { .. } Other code
var bulk = Person.collection.initializeOrderedBulkOp();
bulk.find(query).update(update);
bulk.execute(callback)
});
Of een andere methode die ervoor zorgt dat de verbinding daadwerkelijk tot stand is gebracht.
Wat betreft native ondersteuning voor Bulk API-methoden zonder in het onderliggende driverniveau te duiken, ja daar wordt op dit moment aan gewerkt. Maar u kunt het nog steeds zelf implementeren en het zal geen code breken zolang u verbinding maakt met een MongoDB 2.6-serverinstantie of hoger.