2011-05-23 32 views
0

使用grails datepicker控件,有没有办法让它节省时间精度,但只显示用户到一天?用户只关心那一天,但我需要添加一天的时间,该入口被保存到数据库中。Grails datepicker

回答

2

从我所知道的,datepicker不保存精度,并设置一些默认值的ommited字段。

如果你需要坚持一天进入的时间持续存在,你可以使用dateCreatedlastUpdated这将当对象将被持久化的第一次(dateCreated)或每次对象将被修改(lastUpdated)进行自动设置。

class Message { 

    ... 

    Date dateCreated 
    Date lastUpdated 

} 
+0

谢谢,我去了这条路线虽然我宁愿订购只有一个领域而不是两个领域。隐藏时间字段并使日期选择器默认时间值会很好。 – 2011-05-24 01:38:16

+0

@Bill - 您也可以在提交表单时更改控制器中的时间值。 – jjczopek 2011-05-24 08:51:14

1

如果添加属性precision='day'的标签,时间域将不会显示,例如

<g:datePicker name="myDate" value="${new Date()}" precision="day"/> 

当提交数据时,您可以将控制器中的时间字段设置为默认值。

0

为了在数据库中保存最高精度的日期,您可以使用映射。假设你的数据库是MSSQL(https://msdn.microsoft.com/en-us/library/ms186724.aspx?f=255&MSPPError=-2147217396

class Message { 

... 

Date dateCreated 
Date lastUpdated 

static mapping = { 
    dateCreated sqlType:'date' 
    lastUpated sqlType:'date' 
} 


} 

编号:http://docs.grails.org/latest/ref/Database%20Mapping/column.html

在你的GSP,你可以使用

<g:datePicker name="dateCreated" value="${new Date()}" precision="day" /> 

编号:http://docs.grails.org/latest/ref/Tags/datePicker.html