我知道我必须在某个地方设置TimeZone,但我不知道如何从用户“获取”当前的TimeZone并以正确的偏移显示(动态地)日期。
这是我的代码:
域:
class MyClass {
Date myDate
}
控制器:
def unixSeconds = 1386760029
Date date = new Date(unixSeconds*1000L)
GSP:
<g:formatDate format="yyyy-MM-dd HH:mm" date="${MyClassInstance.myDate}" timeZone="${TimeZone.getTimeZone("GMT")}"/>
答案 0 :(得分:2)
您无法拥有用户时区,因为此信息不会在请求中发送。
您可以尝试使用Geolocation或GeoIP获取用户位置以检索用户所在国家/地区,然后设置相应的时区。
另一种方法是使用JavaScript getTimezoneOffset() Method获取UTC和本地时间之间的时区差异:
var d = new Date()
var n = d.getTimezoneOffset();
但让用户手动设置时区更容易。