ฉันมีปัญหาในการแปลง UTC Time
หรือTimeWithZone
เวลาท้องถิ่นใน Rails 3
บอกว่าmoment
เป็นTime
ตัวแปรบางตัวใน UTC (เช่นmoment = Time.now.utc
) ฉันจะแปลงmoment
เป็นเขตเวลาของฉันโดยดูแล DST ได้อย่างไร (เช่นใช้ EST / EDT)
อย่างแม่นยำยิ่งขึ้นฉันต้องการพิมพ์ "วันจันทร์ที่ 14 มีนาคม 9.00 น." หากเวลาตรงกับเช้าวันนี้ 9.00 น. EDT และ "วันจันทร์ที่ 7 มีนาคม 9.00 น." หากเวลาคือ 9.00 น. EST ของวันจันทร์ที่ผ่านมา
หวังว่าจะมีวิธีอื่น?
แก้ไข : ก่อนอื่นฉันคิดว่า "EDT" ควรเป็นเขตเวลาที่รู้จัก แต่ "EDT" ไม่ใช่เขตเวลาจริงคล้ายกับสถานะของเขตเวลามากกว่า ยกตัวอย่างเช่นมันจะไม่ทำให้รู้สึกใด ๆ Time.utc(2011,1,1).in_time_zone("EDT")
ที่จะขอ เป็นเรื่องที่น่าสับสนเล็กน้อยเนื่องจาก "EST" เป็นเขตเวลาจริงซึ่งใช้ในสถานที่บางแห่งที่ไม่ใช้เวลาออมแสงและเป็น (UTC-5) ตลอดปี