Я хочу, чтобы преобразовать мои вещи:Playframework play.api.libs.json.Json.format реальный случай использования
case class Message (
var text: String = "",
var `type`: String = "error"
)
case class ValidationFieldError(
var fieldName:String, message:Message,
var value:String = "",
var suggestions:List[String] = List[String]()
)
к объекту JSon ...
import play.api.libs.json.{Json, JsValue}
.. Вот я стараюсь использовать Json.format
implicit val validationFieldErrorFormat = Json.format[Message]
implicit val validationFieldErrorFormat = Json.format[ValidationFieldError]
.. когда я Json.toJson(errors)
я получаю JSon массив обратно. Это хорошо. Я хочу вернуть объект json. Чтобы вернуть структуру json, выполните следующие действия:
{
"email": {
"message": {"type": "error", "text": "email duplication"},
"value": "",
"suggestions": [ ]
},
"username" : {... etc. }
}
Я пытался экспериментировать с ним, но сейчас сдался. Используя StringBuilder
, вы получите желаемый json.
Вопрос: Какой бы способ сделать такую структуру/трансформацию.