MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

ReactiveMongo:Como converter BSON retornado por FindAndModify para JSON


Os manipuladores BSON implícitos (sugeridos no comentário) podem não funcionar porque o comando FindAndModify tem uma assinatura estrita para retornar Option[BSONDocument]
FindAndModify extends BSONCommandResultMaker[Option[BSONDocument]]

dado que o resultado retornado é de Future[Option[BSONDocument]] modelo

você pode importar os formatos json
import play.modules.reactivemongo.json.BSONFormats._

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

no resultado, ou chame a conversão diretamente
import play.modules.reactivemongo.json.BSONFormats

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