[英]Play Framework 2.1 Scala - form binding for date
我想在Play Framework 2.1中為具有日期/時間字段的表單創建表單綁定。 是否有日期/時間輸入的標准驗證器? 我知道頁面表單也應該以特定格式發送日期/時間。 有誰知道任何預制解決方案嗎? 或者可以描述如何自己實現一個?
Play 2.1 內置支持 Twitter Bootstrap; 如果您采用該路線,那么Bootstrap Date Picker對於客戶端來說是一個很好的調用(即確保日期以yyyy-mm-dd
或其他有效日期格式發送)。
在客戶端處理后,服務器端Play 2.1支持JodaTime ,因此您可以綁定post'd表單日期,如下所示:
object FooForm {
import play.api.data.{Form, Forms}, Forms._
val mapper = mapping(
'fooDate-> jodaDate("yyyy-MM-dd")
)(Foo.apply)(Foo.unapply)
val form = Form( mapper )
}
就像@virtualeyes所說,從客戶端來看, DatePicker將生成正確的數據格式(默認為dd / MM / yyyy)。
但是,Play Framework需要使用bindFronRequest
(客戶端 - >服務器)正確解組Date格式。
另外Play需要在生成表單時生成正確的日期字符串表示,該表單將被發送到視圖(控制器 - >視圖)。 在java中,這可以通過提供DataBinder來完成。
可以在GitHub上打開的問題中找到此示例
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.