1

我正在尝试在用户的时区使用 datetime_select 助手,但我遇到了一些问题。设置如下:

在控制器中,我设置了日期:

   Time.zone = "Pacific Time (US & Canada)"

然后在视图中我有以下内容:

    <%= datetime_select :custom_daily_message, :date, :default => Time.now.in_time_zone %>

当我在浏览器中看到视图时,在时区中正确选择了日期。让我们说以下内容:

     Fri, 07 Sep 2012 11:20:00 PDT -07:00 

但是,当我提交表单并检查模型中的日期时,它显示以下内容:

     Fri, 07 Sep 2012 11:20:00 UTC +00:00

我希望日期是 UTC,但 PST 有适当的偏移量。有谁知道为什么会这样?是否有解决此问题的方法?

4

2 回答 2

0

我为中央时间做了这样的事情(在我的模型中):

定义开始日期
  super.in_time_zone("Central Time (US & Canada)") if super
结尾

定义结束日期
  super.in_time_zone("Central Time (US & Canada)") if super
结尾

但我还需要一个 before_save 来正确设置对象保存的时间。

编辑:毕竟我不需要 before_save,只要我的 time_zone 在我的 application.rb 文件中正确设置。

于 2013-04-30T15:57:56.217 回答
0

你可以尝试这样做:

在您/config /application.rb设置所需的时区中,对于我的应用程序,我是这样做的。

config.time_zone = 'Mountain Time (US & Canada)'

如果您有任何问题,请告诉我。

于 2012-09-07T18:35:14.320 回答