Play: Cómo transformar JSON al escribirlo / leerlo a / desde MongoDB
Aquí hay un JSON simple que quiero escribir / leer a / desde MongoDB:
{
"id": "ff59ab34cc59ff59ab34cc59",
"name": "Joe",
"surname": "Cocker"
}
Antes de guardarlo en MongoDB,"ff59ab34cc59ff59ab34cc59"
tiene que ser transformado en unaObjectID
yid
renombrado a_id
... asi que dado lo siguienteReads
, como logro eso?
val personReads: Reads[JsObject] = (
(__ \ 'id).read[String] ~ // how do I rename id to _id AND transform "ff59ab34cc59ff59ab34cc59" to an ObjectID?
(__ \ 'name).read[String] ~
(__ \ 'surname).read[String]
) reduce
Y claro, también necesito lo contrario para mi.Writes
, es decir, renombrar_id
aid
y transformando unObjectID
a texto plano en el formato"ff59ab34cc59ff59ab34cc59"
.