the flag to bypass document validation during the operation
Returns an update builder with the given maxBulkSize
.
the maximum number of document(s) per bulk
the ordered behaviour
the writer concern to be used
Prepares an UpdateElement
Prepares an UpdateElement
Prepares an UpdateElement
Updates many documents, according the ordered behaviour.
Updates many documents, according the ordered behaviour.
import scala.concurrent.{ ExecutionContext, Future } import reactivemongo.api.bson.BSONDocument import reactivemongo.api.bson.collection.BSONCollection def updateMany( coll: BSONCollection, docs: Iterable[BSONDocument])(implicit ec: ExecutionContext) = { val update = coll.update(ordered = true) val elements = Future.sequence(docs.map { doc => update.element( q = BSONDocument("update" -> "selector"), u = BSONDocument(f"$$set" -> doc), upsert = true, multi = false) }) elements.flatMap { ups => update.many(ups) // Future[MultiBulkWriteResult] } }
Updates many documents, according the ordered behaviour.
Updates many documents, according the ordered behaviour.
import scala.concurrent.{ ExecutionContext, Future } import reactivemongo.api.bson.BSONDocument import reactivemongo.api.bson.collection.BSONCollection def updateMany( coll: BSONCollection, first: BSONDocument, docs: Iterable[BSONDocument])(implicit ec: ExecutionContext) = { val update = coll.update(ordered = true) val elements = Future.sequence(docs.map { doc => update.element( q = BSONDocument("update" -> "selector"), u = BSONDocument(f"$$set" -> doc), upsert = true, multi = false) }) for { _ <- update.element( q = BSONDocument("update" -> "selector"), u = BSONDocument(f"$$set" -> first), upsert = true, multi = false) ups <- elements res <- update.many(ups) // Future[MultiBulkWriteResult] } yield res }
Performs a single update (see UpdateElement).
Performs a single update (see UpdateElement).
Performs a single update (see UpdateElement).
Performs a single update (see UpdateElement).
import scala.concurrent.ExecutionContext.Implicits.global import reactivemongo.api.bson.BSONDocument import reactivemongo.api.bson.collection.BSONCollection def updateOne(coll: BSONCollection, q: BSONDocument, u: BSONDocument) = coll.update.one(q, u, upsert = true)
Builder for update operations.