Tôi đang gặp sự cố khi chuyển đổi UTC Time
hoặc giờ TimeWithZone
địa phương trong Rails 3.
Giả sử moment
là một số Time
biến trong UTC (ví dụ moment = Time.now.utc
:). Làm cách nào để chuyển đổi moment
sang múi giờ của tôi, quan tâm đến DST (tức là sử dụng EST / EDT)?
Chính xác hơn, tôi muốn in ra "Thứ Hai ngày 14 tháng 3, 9 giờ sáng" nếu thời gian tương ứng với 9 giờ sáng nay theo giờ EDT và "Thứ Hai, ngày 7 tháng 3, 9 giờ sáng" nếu thời gian là 9 giờ sáng theo giờ EST vào thứ hai tuần trước.
Hy vọng rằng có một cách khác?
Chỉnh sửa : Đầu tiên, tôi nghĩ rằng "EDT" phải là múi giờ được công nhận, nhưng "EDT" không phải là múi giờ thực tế, giống như trạng thái của múi giờ hơn. Ví dụ, nó sẽ không có ý nghĩa gì khi yêu cầu Time.utc(2011,1,1).in_time_zone("EDT")
. Có một chút khó hiểu, vì "EST" là múi giờ thực tế, được sử dụng ở một số nơi không sử dụng giờ tiết kiệm Ánh sáng ban ngày và (UTC-5) kéo dài hàng năm.