如何让Rails根据浏览器时区展示DateTime数据?

更新于
2026-10-09 20:37:25
0阅读来源:SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计232个文字,预计阅读时间需要1分钟。

如何让Rails根据浏览器时区展示DateTime数据?

Rails默认将所有DateTime存储在UTC时区中。为了在用户浏览器中显示他们自己的时区中的时间,可以采用以下简单方法:

1. 在`application.rb`文件中设置默认时区: ruby config.time_zone='用户时区'

2. 在模型中,确保DateTime类型字段是`time_with_timezone`或`datetime_with_timezone`:

ruby class Event

3. 在控制器中,使用`in_time_zone`方法转换时间:

ruby class EventsController

4. 在视图中,使用`local_time`助手方法:

如何让Rails根据浏览器时区展示DateTime数据?

erb

事件时间:

有关更多信息,可以参考这个宝石:[Rails Time Zone](https://github.com/kylef/rails-time-zone)。

Rails将所有DateTime存储在UTC时区中.我需要在他们的浏览器报告他们所在的时区中向用户显示该时间.有一种简单的方法吗?

使用最新的Rails(3.2.13).

有人把解决方案变成了一个宝石:

github.com/basecamp/local_time

本文共计232个文字,预计阅读时间需要1分钟。

如何让Rails根据浏览器时区展示DateTime数据?

Rails默认将所有DateTime存储在UTC时区中。为了在用户浏览器中显示他们自己的时区中的时间,可以采用以下简单方法:

1. 在`application.rb`文件中设置默认时区: ruby config.time_zone='用户时区'

2. 在模型中,确保DateTime类型字段是`time_with_timezone`或`datetime_with_timezone`:

ruby class Event

3. 在控制器中,使用`in_time_zone`方法转换时间:

ruby class EventsController

4. 在视图中,使用`local_time`助手方法:

如何让Rails根据浏览器时区展示DateTime数据?

erb

事件时间:

有关更多信息,可以参考这个宝石:[Rails Time Zone](https://github.com/kylef/rails-time-zone)。

Rails将所有DateTime存储在UTC时区中.我需要在他们的浏览器报告他们所在的时区中向用户显示该时间.有一种简单的方法吗?

使用最新的Rails(3.2.13).

有人把解决方案变成了一个宝石:

github.com/basecamp/local_time