Grails 日期参数表格发行
我在标签上遇到了一些问题,然后用发送的参数从模型更新了我的日期属性 这是我的标签:Grails 日期参数表格发行,grails,date,groovy,Grails,Date,Groovy,我在标签上遇到了一些问题,然后用发送的参数从模型更新了我的日期属性 这是我的标签: <g:datePicker name="data" value="${controle.data}" precision="month" years="${(Calendar.getInstance().get(Calendar.YEAR)-70)..Calendar.getInstance().get(Calendar.YEAR)}"/> params附带params.d
<g:datePicker name="data" value="${controle.data}" precision="month"
years="${(Calendar.getInstance().get(Calendar.YEAR)-70)..Calendar.getInstance().get(Calendar.YEAR)}"/>
params附带params.data_month和params.data_year,其各自的值以字符串形式显示,如下所示:
[[data:struct], [data_month:1], [data_year:2009]]
我当时试着做:
model.data = new SimpleDateFormat("MM/yyyy").parse("${params.data_month}/${params.data_year}")
但它拒绝该值,并发出警告:“无法将[java.lang.String]类型的值转换为属性'data'所需的[java.util.Date]类型”
但我不能简单地做到:model.data=
参数数据
为什么不呢?您是否遇到了例外情况,或者只是被过时的文档误导了-这是一个特点。将自动执行到日期类型的转换 至于
SimpleDateFormat
问题,只需添加一天,如下所示:
model.data = new SimpleDateFormat("d/MM/yyyy").parse(
"1/${params.data_month}/${params.data_year}")
println model.data
println new SimpleDateFormat("MM/yyyy").parse("${params.data_month}/${params.data_year}")
--shows
2006-01-01 00:00:00.0
Sun Jan 01 00:00:00 BRST 2006
model.data = new SimpleDateFormat("d/MM/yyyy").parse(
"1/${params.data_month}/${params.data_year}")