我让用户在 Ruby on Rails 网站中输入日期。我将日期解析为 DateTime 对象,如下所示:
date = DateTime.new(params[:year].to_i, params[:month].to_i, params[:day].to_i, params[:hour].to_i, params[:minute].to_i)
或者
date = DateTime.parse(params[:date])
两个DateTime
s 都不会在我之前设置的用户的时区中,例如:
Time.zone = "Pacific Time (US & Canada)"
如何将上述DateTime
s 解析为正确的时区?我知道该DateTime.new
方法有时间偏移的第 7 个参数。有没有一种简单的方法可以在给定时间内查找时区的偏移量?或者我应该使用其他的东西DateTime
吗?