सुनिश्चित करें कि आपके पास application.conf में सही कॉन्फ़िगरेशन है
play.modules.enabled += "play.modules.reactivemongo.ReactiveMongoModule"
mongodb.uri = "mongodb://localhost:27017/demodb"
आपको नीचे के रूप में मोंगो कोड इंजेक्ट करने और बदलने की आवश्यकता है
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
}
यदि आप पुराने एपीआई कोड के साथ नए एपीआई कोड की तुलना करते हैं, तो reactiveMongoApi.database.map भविष्य [संग्रह] लौटाता है।