Объект Ruby Time для полуночи UTC

Мне нужно иметь возможность создавать объекты UTC Time в Rails, но независимо от того, что я пытаюсь сделать, в конечном итоге это локальный объект Time, преобразованный в UTC.

application.rb

config.time_zone = "UTC"

Примеры
Я пытаюсь создать объект Time для полуночи на New Years 2017:

Time.new(year, month, 1, 0, 0, 0)

=> 2017-03-01 00:00:00 -0500

Time.new(year, month, 1, 0, 0, 0).in_time_zone

=> Ср, 01 мар 2017 05:00:00 UTC +00:00

Time.new(year, month, 1, 0, 0, 0).in_time_zone('UTC')

=> Ср, 01 мар 2017 05:00:00 UTC +00:00

2 ответа

Решение

Вы должны быть в состоянии использовать:

Time.utc(year, month, 1, 0, 0, 0)

или просто

Time.utc(year, month, 1)

Я думаю, что следующее может делать то, что вы хотите:

Time.new(year, month, 1, 0, 0, 0, "+00:00")

Смотрите документацию для более подробной информации.

Другие вопросы по тегам