Aplicación de la clase de casos al campo individual en un juego de Scala de forma anidada
-
20-12-2019 - |
Pregunta
Estoy tratando de aplicar una clase de casos a un campo individual dentro de un formulario de juego de Scala.El campo que lo estoy intentando aplicarlo es exerciseName
dentro de la variable 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)
)
Me preguntaba si alguien podría proporcionarme alguna idea de esto.
¡Gracias!
Solución
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)
)
También recomendaría cambiar el nombre del campo del nombre de Ejercicio a "Nombre" para evitar la confusión.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow