Grails - 通过考虑时区的用户来显示日期



我知道我必须在某个地方设置时区,但我不知道该如何"从用户中获取当前的时区,并(动态地显示?)带有正确偏移的日期。

这是我的代码:

域:

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")}"/>

您不能拥有用户时区,因为此信息未在请求中发送。

您可以尝试使用地理位置或GeoIP获取用户位置来检索用户国家,然后设置相应的时区。

另一种方法是使用JavaScript GetTimeZoneOffset()方法:

获得UTC和本地时间之间的时区差异
var d = new Date()
var n = d.getTimezoneOffset();

,但是让用户手动设置其时区更容易。

相关内容

  • 没有找到相关文章

最新更新