小编Dex*_*xmo的帖子

在这种情况下玩json看起来效果不佳

我有以下代码与play json一起使用

import play.api.libs.json.Json

trait A {
  def x: Option[Int]

  def y: Option[String]
}

case class A1(x: Option[Int] = Some(1), y: Option[String]) extends A

object PlayJsonBug {
  def main(args: Array[String]): Unit = {
    implicit val A1Reader = Json.reads[A1]
    implicit val A1Writer = Json.writes[A1]
    val str = """{"y":"xyz"}"""
    val a: A1 = Json.fromJson[A1](Json.parse(str)).get
    println(a)
  }


}
Run Code Online (Sandbox Code Playgroud)

情况下类A1具有默认值xSome (1).当我解析时{"y":"xyz"},结果是A1(None,Some(xyz)),我认为应该在这里使用默认值,即tis,结果应该是A1(Some(1),Some(xyz))

这是一个错误吗?或者我如何解决这个问题

scala playframework playframework-2.0

1
推荐指数
1
解决办法
76
查看次数

标签 统计

playframework ×1

playframework-2.0 ×1

scala ×1