2016-03-20 9 views

Antwort

1

Mongoid Klassen haben einen .collection Accessor bereit, der Zugriff auf das Collection Objekt aus dem Kerntreiber gibt:

bulk = Class.collection.initialize_unordered_bulk_op 

Und so weiter.

Aber es ist in der Regel in der modernen Fahrer bevorzugt, die konsistentere bulk_write() Verfahren und Anordnungen von Standardobjekten zu verwenden:

ops = []; 

ops.push({ "insert_one" => { "_id" => 1 } }) 
ops.push({ "insert_one" => { "_id" => 1 } }) 
ops.push({ "insert_one" => { "_id" => 3 } }) 
ops.push({ "insert_one" => { "_id" => 3 } }) 

Class.collection.bulk_write(ops,{ "ordered" => false }) 

Oder sogar insert_many() wenn Sie nur Einfügungen tun und nicht Arten von Schreiboperationen Mischen:

Class.collection.insert_many([ 
    { "_id" => 1 }, 
    { "_id" => 1 }, 
    { "_id" => 3 }, 
    { "_id" => 3 } 
],{ "ordered" => false })