【发布时间】:2011-04-21 21:20:06
【问题描述】:
我的 rails3 应用有一些奇怪的行为。
当我使用 jquery UI datepicker 选择日期时。我在我的日志中看到了这个
Parameters: {"commit"=>"Save", "log"=> {"log_date"=>"04/20/2011"} ....blah...b}
AREL (1.0ms) INSERT INTO "logs" ("log_date") VALUES ('2011-04-19 22:00:00.000000')
我忽略了不相关的信息。
如您所见,Rails 无法正确翻译输入的日期。它(在这种情况下)将 20.apr 更改为 19.apr。
当我稍后打电话时
<%= log.log_date.strftime('%d.%m.%y') %>
我得到了正确的日期,但是当我做这个查询时
@log_times = Log.group(:log_date)
所有日志都比他们预期的早了一天。
在控制台中,此示例中的日志如下所示
irb(main):017:0> Log.last
=> [#<Log id: 246, log_date: "2011-04-19 22:00:00">]
所以,它保存一个日期到早期,但是当我在视图中显示它时它是正确的。
为什么?
我可以使用 getter 和 setter 来解决这个问题吗?
【问题讨论】:
标签: ruby-on-rails jquery-ui datepicker