PlayアクションからJsonを返すために使用する関数の1つを一般化しようとしています。
私は現在このようにしています:
def JsendOkObj(obj: JsValue) = Ok(Json.obj("status" -> "success", "data" -> obj))
そしてそれを呼びます:
JsendOkObj(Json.toJson(myObj))
もっと次のようなことをしたいのですが。
def JsendOkObj[A](obj: A) = Ok(Json.obj("status" -> "success", "data" -> Json.toJson(obj)))
そしてそれを次のように呼びます:
JsendOkObj(myObj)
ここで、Json.toJson
は次のように定義されます。
def toJson[A](implicit arg0: Writes[A]): Enumeratee[A, JsValue]
これをコンパイルするときに発生するエラーは、タイプの書き込みを定義する必要があることですA
。A
どのタイプが実際に最終的になるかわからないため、ここではこれは不可能です。
タイプAのJsonデシリアライザーが見つかりません。このタイプの暗黙的な書き込みまたはフォーマットを実装してみてください。