0
Scalaフォームの日付オプションの検証を追加しています。ユーザが特定の日付/時間範囲を検索することを可能にする任意の日付フィールドが存在するが、第2の日付は有効な範囲の最初の日付の後でなければならない。Scala Play Frameworkのフォームで日付/時刻を比較するには?
現時点では、この検証は動作します:
val searchForm = Form(
mapping(
"ItemID" -> optional(text),
"fromDate" -> optional(jodaLocalDate("yyyy-MM-dd:HH:mm:ss")),
"toDate" -> optional(jodaLocalDate("yyyy-MM-dd:HH:mm:ss")),
"Class" -> optional(text),
"Status" -> optional(text),
"Group" -> optional(text),
"Area" -> nonEmptyText,
"Ordered" -> optional(text)
)(SearchModel.apply)(SearchModel.unapply)
verifying("Both or no dates must be selected. Date/Time range must be valid.", f => (f.fromDate.isEmpty && f.toDate.isEmpty)||
((f.fromDate.isDefined&&f.toDate.isDefined)&&f.fromDate.head.isBefore(f.toDate.head))))
をしかし、それは唯一の日付を比較して、時間区間HH:mm:ss
を無視します。
タイムバリデーションも追加する方法はありますか?別の検証方法を使用すべきですか?
あなたのHTMLフォームは間違いなく時間部分も送信しますか? –