我的消息表中有一个名为“Archived”的列和一个按钮,按下该按钮会将当前时间和日期写入db列。现在我可以用它来写时间,但它是在错误的时区。在线查看后,我创建了以下代码,目前正在保存,但不是在正确的时区:
控制器代码
def archive_message
@message = Message.find(params[:id])
@message.archived = DateTime.now.in_time_zone "Central Time (US & Canada)"
@message.save
redirect_to '/messages'
end
我的路线(我相信这是好的)
post 'messages/:id/archive_message' => 'Messages#archive_message', :as => 'archive_message'
任何建议都非常感谢。
答案 0 :(得分:1)
再次编辑:好的,这是UTC时间,所以它正在运行。谢谢大家。
编辑:我刚关闭了重新启动的所有内容,现在它还没有工作,它将时间再节省了5个小时,我不知道为什么。
在config / application.rb中 将以下内容添加到模块代码
config.time_zone = 'Central Time (US & Canada)' config.active_record.default_timezone = :local
和我的控制器
@message.archived = DateTime.current
谢谢大家