Du kan gøre det, men problemet er, at når du får adgang til det underliggende samlingsobjekt fra basisdriveren, tages der ikke de samme forholdsregler som med de implementerede mongoose-modelmetoder.
Alle modelmetoder omslutter de underliggende metoder med andre funktioner, men den mest almindelige er at sørge for, at en databaseforbindelse er åben, før du forsøger at få adgang til metoden. Dette sikrer, at en Db
instans er til stede og en Collection()
objekt kan fås
Når du har brugt .collection
accessor på modellen, så gør du det hele på egen hånd:
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)
});
Eller en anden metode, der grundlæggende sikrer, at forbindelsen rent faktisk er blevet etableret.
Med hensyn til indbygget understøttelse af Bulk API-metoder uden at dykke ned i det underliggende driverniveau, ja, det arbejdes der på i skrivende stund. Men du kan stadig implementere det selv, og det vil ikke bryde kode, så længe du opretter forbindelse til en MongoDB 2.6-serverinstans eller nyere.