ruby-on-rails - 在 Rails 中添加日期时间时区?

标签 ruby-on-rails ruby datetime

我正在使用 Rails 4 和 Ruby 2。

如何向 DateTime 添加时区?我想将 PST 时区添加到新的日期时间。

我已经尝试过:

d = DateTime.strptime('12/21/2012', '%m/%d/%Y')
 => 2012-12-21T00:00:00+00:00 
d.in_time_zone("Pacific Time (US & Canada)")
 => Thu, 20 Dec 2012 16:00:00 PST -08:00 

如何获取2012 年 12 月 21 日星期五 00:00:00 PST -08:00

最佳答案

尝试:

d = DateTime.strptime('12/21/2012', '%m/%d/%Y').to_time - Time.now.utc_offset

如果您使用 Rails,请记住使用 Time.zoneDateTime.zone(如果存在)。根据我的阅读,当你使用 XX.zone 变体时,你会从 Rails 应用程序中获取配置,而如果你在没有区域的情况下使用它,你会得到 Ruby 配置,我认为这是系统配置。

关于ruby-on-rails - 在 Rails 中添加日期时间时区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20061363/

相关文章:

ruby-on-rails - Rails Assets 管道不包括 application.js list 中的必需文件

javascript - 未调用 AJAX 成功函数

ruby-on-rails - rails 4 : Force method: :post

jquery - 元素不可点击, ruby

java - 实现与 SimpleDateFormat 相等的 DateTimeFormatter Y10K 输出?

c# - 如何将特定时区的午夜正确转换为 Utc 时间?

ruby-on-rails - 要求文件使用 dirname(__FILE__) 还是只需要文件名?

ruby - 如何在 Ruby 中编写归并排序算法

ruby - 在 Ruby 中避免方法重载

Python:将 MySQL 日期时间转换为日期时间格式