Scala Enumeration Val获得的价值

时间:2014-03-10 15:02:34

标签: scala playframework enums playframework-2.0

在播放应用程序中,我正在使用“activate-framework”。枚举我必须这样声明:

object State extends Enumeration {
case class State(value: Int) extends Val(value)
   val OPEN = State(0)
   val CLOSED = State(1)
}

来源:http://activate-framework.org/documentation/entity/

如何从Int获取状态:

State.valueOf(1) <==== ??

在模型中我有一个字段状态:

import model.State.State
case class Task(var name:String, var state:State)

它是State.State案例类,如何将Int转换为State.State类? 当我做State(1)时,我收到State.Value而不是State.State class。

2 个答案:

答案 0 :(得分:2)

scala> State(1)
res0: State.Value = CLOSED

答案 1 :(得分:-1)

为了能够通过名称获取值,您必须使用字符串构造函数声明枚举:

case class State(value: String) extends Val(value)