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

Získejte návratovou hodnotu funkce reactivemongo findAndUpdate

Zkuste toto:

case class Person(name: String, count: Int)

object Helpers { 
  def increaseCount(collection: BSONCollection): Future[Option[Int]] = {
    import collection.BatchCommands.FindAndModifyCommand.FindAndModifyResult
    implicit val reader = Macros.reader[Person]

    val resultFut: Future[FindAndModifyResult] = collection.findAndUpdate(
      BSONDocument("name" -> "James"),
      BSONDocument("$inc" -> BSONDocument("count" -> 1)),
      fetchNewObject = true,
      upsert = true
    )

    val updatedCountOpt = resultFut.map { r =>
      r.result[Person].map { p =>
        p.count
      }
    }

    updatedCountOpt
  }
}



  1. Kdy použít Redis místo MySQL pro aplikace PHP?

  2. arrayFilters v mongodb

  3. (Angular 2) Jak vyplnit rozevírací seznam na základě jiného výběru rozevíracího seznamu

  4. redis + gevent - Špatný výkon - co dělám špatně?