MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

ReactiveMongo:So konvertieren Sie BSON, das von FindAndModify zurückgegeben wird, in JSON

Implizite BSON-Handler (im Kommentar vorgeschlagen) funktionieren möglicherweise nicht, da der FindAndModify-Befehl eine strikte Signatur hat, um Option[BSONDocument] zurückzugeben

FindAndModify extends BSONCommandResultMaker[Option[BSONDocument]]

vorausgesetzt, das zurückgegebene Ergebnis ist Future[Option[BSONDocument]] Typ

Sie können die json-Formate importieren

import play.modules.reactivemongo.json.BSONFormats._

und bewerben Sie sich

result.map(docOpt => docOpt.map(d => Json.toJson(d)))

on result, oder rufen Sie die Konvertierung direkt auf

import play.modules.reactivemongo.json.BSONFormats

result.map(docOpt => docOpt.map(d =>
  BSONFormats.BSONDocumentFormat.writes(d).as[JsObject]))