Grails application serving multiple timezones
在拥有多个时区用户的Grails应用程序中,处理时区的正确方法是什么?是否有一个关于Muilt时区Grails应用的标准?也许Rails处理多时区支持的方式是类似的?http://mad.ly/2008/04/09/rails-21-time-zone-support-an-概述/
是否有方法设置每个用户会话的当前时区?这意味着您可以有多个活跃的用户会话,使用不同的时区来处理"日期"。
我尽量避免手动处理时区转换。
谢谢
首先,给用户一个选择通常是个好主意——他在哪个时区。你可以试着从他的设定中推断出来,但这不可靠。在Grails中,用户可以通过以下方式选择时区:
1 | <g:timeZoneSelect name="myTimeZone" /> |
注意,
要使其正常工作,您需要将所有时间存储在数据库中(以UTC为单位)或另一个为整个应用程序固定的时区。
您可以尝试使用jodatime和datetime类,它内部有时区。不过,我相信你还是需要把时间储存在超声波探伤仪里。为此,您必须提供自己的映射到应用UTC的GORM、考虑到用户时区的自己的日期格式标记库,以及其他一些东西。
哦,如果你有一些共同的功能,比如后台工作(我相信你会),它将使用什么时区?