将case类应用于嵌套形式Scala Play中的独立字段
我试图将一个case类应用于Scala播放表单中的单个字段。我尝试应用它的字段是将case类应用于嵌套形式Scala Play中的独立字段,scala,playframework,playframework-2.0,Scala,Playframework,Playframework 2.0,我试图将一个case类应用于Scala播放表单中的单个字段。我尝试应用它的字段是exerciseName在setsForm变量中 case class ExerciseName(exerciseName:String) case class WorkoutSet(exerciseName:ExerciseName, number:Int) case class WorkoutSets(sets:List[WorkoutSet]) val setsForm:Form[Workou
exerciseName
在setsForm
变量中
case class ExerciseName(exerciseName:String)
case class WorkoutSet(exerciseName:ExerciseName, number:Int)
case class WorkoutSets(sets:List[WorkoutSet])
val setsForm:Form[WorkoutSets] = Form(
mapping(
"workoutSets" -> list(mapping
(
//i need to get exerciseName to be of type ExerciseName somehow...
"exerciseName" ->nonEmptyText,
"workoutSet" -> number(min=1,max=20)
)(WorkoutSet.apply)(WorkoutSet.unapply))
)(WorkoutSets.apply)(WorkoutSets.unapply)
)
我想知道是否有人能给我一些关于这方面的见解
谢谢
val setsForm:Form[WorkoutSets] = Form(
mapping(
"sets" -> list(
mapping(
"exerciseName" -> mapping("exerciseName" -> nonEmptyText)(ExerciseName.apply) (ExerciseName.unapply),
"workoutSet" -> number(min=1,max=20)
)(WorkoutSet.apply)(WorkoutSet.unapply)
)
)(WorkoutSets.apply)(WorkoutSets.unapply)
)
我还建议将ExerciseName的字段名改为“name”,以避免混淆