我有一个用例,我需要接受空值,但不缺少属性。这是在 Play Framework 2.1.3 上
例如:
case class Foo(a: Option[String], b: Option[String], c: Option[String])
这个案例类可能是更大案例类的一部分
我想接受以下内容并生成 foo 对象:
{
"foo" : {
"a" : "blah",
"b" : null,
"c" : "blah"
}
}
但不是这个:
{
"foo" : {
"a" : "blah",
"c" : "blah"
}
}
目前我有以下将JSON读入案例类:
val FooReader = (
(__ \ "a").readNullable[Setting] and
(__ \ "b").readNullable[String] and
(__ \ "c").readNullable[String])(Foo)
如何让 FooReader 在缺少的属性上生成 JsError 但允许为空?