【发布时间】:2026-02-07 20:40:02
【问题描述】:
我有一个名为 test_date 的列,在 General Exam 表中输入 datetime。我构建了一个表单来创建和更新 GeneralExam,在表单上,我允许用户通过jQuery UI Datepicker 选择日期和时间。
用户选择日期和时间后,它将显示在文本字段中,如:
25-11-2012 16:30
这是我现在的时间。当我在控制台中运行时,我看到test_date 保存在数据库中是:
2012-11-25 09:30:00
当我得到对象 GeneralExam 并得到 test_date 值时,它是:
g = GeneralExam.last
g.test_date
=> Sun, 25 Nov 2012 16:30:00 ICT +07:00
我认为test_date是转换的,因为我在application.rb中设置的是:
config.time_zone = 'Hanoi'
但是当我更新表单上的一般考试时,它仍然显示保存在数据库中的时间,而不是我的本地时区,这意味着它显示:
2012-11-25 09:30:00
但我希望它就像我在表单上选择的那样:
25-11-2012 16:30:00
如何设置以当地时间显示日期时间列?
而且我认为日期顺序颠倒了,当我选择日期时,它是25-11-2012,但是当它显示时它是2012-11-25,为什么它颠倒了顺序?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3