styl zip @ powtórz nad zagnieżdżoną formą
@repeat
jest niezwykle przydatny; jednak uderzam w blok drogowy z zagnieżdżonymi formami.
Muszę stworzyć formularz harmonogramu gier, który ma 2 atrybuty, dane harmonogramu (data gry, czas, miejsce, przeciwnik) i uwagi zespołu (np. „Z powodu sztormu zimowego, gra 7 stycznia została przeniesiona do 9 stycznia w ... Hawaje ;-) ")
Mapowanie formularzy opiera się na:
case class Schedule(
composite: Seq[Composite],
note: Seq[ScheduleNote]
)
a następnie, aby wyświetlić formularz w szablonie, mam:
@repeat(_form("composite"), min=numGames) { f=>
@inputDate(f("gameDate"), 'id-> "gameDate", '_label-> "Game Date")
....
}
@repeat(_form("note"), min=numGames) { f=>
@inputDate(f("gameNote"), '_label-> "Game Notes")
....
}
oczywiście notatki z gry muszą być sparowane z danymi gry, co nie nastąpi w powyższym, ponieważ wygląda na to, że muszę@repeat
złożone dane gry i notatki oddzielnie.
Byłoby naprawdę, bardzo miło:@repeat(_form("composite").zip(_form("note")), min=numGames) { case(fc,fn)=>
nad zagnieżdżonymi elementami formularza.
Czy i tak mogę to zrobić? Patrzącu źródła wydaje się, że nie, ale być może z pimpem w mojej bibliotece jest to możliwe (lub, ponieważ buduję przeciwko 2.1, włamać coś na miejscu, dopóki framework nie obsługuje tego, co wydaje się być ograniczeniem)