我使用grails-2.4.5,SQL Server 2008 R2数据库开发了一个grails应用程序并面临一个奇怪的问题。在我的一个域类中,有一个Date数据类型字段。当我从相应表单提交数据时,它会将其正确保存到数据库,但在显示视图中,日期显示两天前保存的日期。例如我输入1992年6月8日,它将数据库保存为“1992-06-08 00:00:00.0000000”,但在节目视图中它变为“06/06/1992”
我在show页面中使用了g:formatDate标记。 (<g:formatDate format="dd/MM/yyyy"
date="${aaaOrganizationInstance?.dateOfEstablish}"/>
)
控制器保存操作:
@Transactional
def save(AaaOrganization aaaOrganizationInstance) {
if (aaaOrganizationInstance == null) {
notFound()
return
}
if (aaaOrganizationInstance.hasErrors()) {
respond aaaOrganizationInstance.errors, view:'create'
return
}
aaaOrganizationInstance.save flush:true
request.withFormat {
form multipartForm {
flash.message = message(code: 'default.created.message', args: [message(code: 'aaaOrganization.label', default: 'AaaOrganization'), aaaOrganizationInstance.id])
redirect aaaOrganizationInstance
}
'*' { respond aaaOrganizationInstance, [status: CREATED] }
}
}