ich reactivemongo
in meinem Play-Framework-App und ich bemerkte, bin mit, dass alle Dokumente, wie zum BeispielMongoDB Objekt-ID entfernen, wenn die Ergebnisse aus einer Sammlung holen
{name: "Robert", age: 41 }
in MongoDB als
gespeichert sind{_id: { $oid:"574005977e356b7310bcdc8d"}, name: "Robert", age: 41 }
und das ist in Ordnung. Das ist die Methode, die ich die Dokumente
// Scala code
def save(document: JsObject)
(implicit ec: ExecutionContext): Future[WriteResult] = {
collection.insert(document)
}
Letztere Darstellung auch speichern verwenden ist, was ich bekomme, wenn ich das gleiche Dokument aus der DB holen, mit dieser Methode:
def find(query: JsObject, queryOptions: QueryOpts, projection: JsObject,
sort: JsObject, pageSize: Int)
(implicit ec: ExecutionContext): Future[List[JsObject]] = {
collection.find(query, projection)
.options(queryOptions)
.sort(sort)
.cursor[JsObject](ReadPreference.primaryPreferred)
.collect[List](pageSize)
}
aber in diesem Fall habe ich d‘eine Darstellung wie
{_id: "574005977e356b7310bcdc8d", name: "Robert", age: 41 }
erhalten, um die Dokumente an den anfordernden Client über meine RESTful API zu senden. Wie kann ich das bekommen?
Sie können Json-Transformer verwenden: [Fall 6: Eine Verzweigung von Eingabe-JSON abschneiden] (https://www.playframework.com/documentation/2.5.x/ScalaJsonTransformers#Case-6:-Prune-a-branch- Von-Eingabe-JSON) –