Ich habe eine Enumeration der Form:Wie bindet man eine Enumeration an ein Playframework-Formular?
object MatchFilterType extends Enumeration {
type MatchFilterType = Value
val gt = Value("gt")
val lt = Value("lt")
val eq = Value("eq")
}
Den Versuch, eine Form val in meinem Controller zu erstellen:
case class SearchRequest(mft: MatchFilterType, queryText: String, locations: List[String])
val searchForm: Form[SearchRequest] = Form(
mapping(
"mft" -> ????????,
"queryText" -> nonEmptyText,
"locations" -> list(text)
)(SearchRequest.apply)(SearchRequest.unapply)
)
ich für dieses Projekt spielen 2.6.x verwenden.
Wie mappe ich meine Aufzählung in meinem Formular val?
Können Sie mir erklären, warum ich diesen Formatierer erstellen muss? die Theorie dahinter :) – Blankman
Wie würde ich das optional machen? – Blankman
@Blankman, um es optional zu machen, wickeln Sie einfach das Mapping in ein 'optional':' "mft" -> optional (Forms.of [MatchFilterType]) '. Sie müssen 'SearchRequest' aktualisieren, um eine' Option [MatchFilterType] 'zu übernehmen. Für die Theorie siehe https://www.playframework.com/documentation/2.6.x/ScalaForms#custom-binders-for-form-mappings –