以下を考えるとEnumeration
...
object MyEnum extends Enumeration {
type MyEnum = Value
val Val1 = Value("val1")
val Val2 = Value("val2")
val Val3 = Value("val3")
}
import MyEnum._
...そして以下Map
...
val m = Map(
val1 -> "one",
val2 -> "two",
val3 -> "three"
)
... m
JSON に変換する必要があります。
import play.api.libs.json._
val js = Json.toJson(m)
コンパイラが type の Json シリアライザーを見つけられないため、最後のステートメントはコンパイルされませんscala.collection.immutable.Map[MyEnum.Value,String]
。
質問: Play は type のシリアライザーを提供してscala.collection.immutable.Map[String,String]
おり、私の列挙には実際に文字列が含まれているため、デフォルトの JSON シリアライザーを再利用する方法はありますか?