MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak skonfigurować Play!2.5 z ReactiveMongo

Upewnij się, że masz poprawne konfiguracje w pliku application.conf

play.modules.enabled += "play.modules.reactivemongo.ReactiveMongoModule"
mongodb.uri = "mongodb://localhost:27017/demodb"

Musisz wstrzyknąć i zmienić kod mongo jak poniżej

class MongoUserDao @Inject() (val reactiveMongoApi: ReactiveMongoApi)
extends UserDao {
//  val users = reactiveMongoApi.db.collection[JSONCollection]("users") -- old API
//   def find(userId:UUID):Future[Option[User]] =
//    users.find(Json.obj("id" -> userId)).one[User]  -- old code

  def usersF = reactiveMongoApi.database.map(_.collection[JSONCollection]("users"))  //new API

  def find(userId:UUID):Future[Option[User]] = for {
    users <- usersF
    user <- users.find(Json.obj("id" -> userId)).one[User]
  } yield user     // new code
}

Jeśli porównasz nowy kod API ze starym kodem API, reactiveMongoApi.database.map zwraca Future[Collection].




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nie można połączyć się z MongoDB Atlas przy użyciu Mongoose z parametrami połączenia

  2. MongoDB:Dopasuj wiele elementów tablicy

  3. Jak programowo wstępnie podzielić klucz fragmentu oparty na GUID za pomocą MongoDB?

  4. MongoDB:Czy należy wstępnie przydzielić dokument, jeśli używasz $addToSet lub $push?

  5. Ustaw domyślną datę w dokumencie Mongoose na teraz + [trochę przyrostu]