В Play 2.1 мы используем что-то вроде ниже, чтобы получить объект существа из JSON через чтение.Play JSON Combinators
implicit val creatureReads = (
(__ \ "name").read[String] and
(__ \ "isDead").read[Boolean] and
(__ \ "weight").read[Float]
)(Creature.apply _)
родственника нового в Scala, я пытаюсь понять, есть ли другой способ, чтобы построить объект существ без использования метода Apply? Можно ли создать анонимную функцию для создания объекта вместо того, чтобы полагаться на заявку?
У меня есть случаи, когда большинство полей в моих объектах могут отсутствовать, но я бы хотел построить объект из того, что у меня есть. Лучше ли просто определить один READ для объекта и использовать readnullable для каждого из полей?
У меня также были сложные условные выражения, так что было бы проще определить пользовательские функции для его создания, а не пытаться захватить все случаи в одном Reader?
Спасибо, что очистили его для меня. Но еще один вопрос о JSErrors, какой бы чистый способ указать пользовательскую ошибку вместо «path \ foo» не найден? Есть ли где-нибудь, что я могу положить в Чтение? –
Не для чтения по умолчанию, но это зависит от вашего варианта использования. Можете ли вы опубликовать отдельный вопрос? –
Несомненно, можете ли вы взглянуть на http://stackoverflow.com/questions/17818924/play-framework-json-reader-and-custom-jserrors –