sql >> Databáze >  >> NoSQL >> MongoDB

Operace hromadné aktualizace Mongoose

Můžete to udělat, ale problém je v tom, že při přístupu k základnímu objektu kolekce ze základního ovladače nejsou přijata stejná opatření jako u implementovaných metod modelu mongoose.

Všechny metody modelu obalují základní metody jinými funkcemi, ale nejběžnější je zajistit, aby bylo před pokusem o přístup k metodě otevřené připojení k databázi. Tím je zajištěno, že Db instance je přítomna a Collection() objekt lze získat

Jakmile použijete .collection Accessor na modelu, pak to všechno děláte sami:

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)

});

Nebo nějakou jinou metodu, která v podstatě zajistí, že spojení bylo skutečně navázáno.

Pokud jde o nativní podporu pro hromadné metody API bez ponoření do základní úrovně ovladače, ano, na tom se v současné době pracuje. Stále to však můžete implementovat sami a nebude to prolamovat kód, pokud se připojujete k instanci serveru MongoDB 2.6 nebo vyšší.



  1. HBase:5 tipů pro běh s nízkou pamětí EC2

  2. Připojte mongo db ke vzdálenému serveru nodejs

  3. Použití pecl k instalaci ovladače Mongodb na OS X El Capitan (v10.11.1)

  4. Mongodb – počet položek pomocí addToSet