Я прочитал довольно много статей, сделал свою домашнюю работу.У меня все время хранится как UTC, каждый пользователь устанавливает свой часовой пояс и т. Д. Вот проблема, с которой я столкнулся:
Time.zone
=> GMT-05:00 Eastern Time US Canada
t = Ticket.first
t.hold_until = "Jan 1, 2012 9:00PM"
t.save!
t.hold_until
=> Sun, 01 Jan 2012 16:00:00 EST -05:00
# notice the above time lost 5 hours
Проблема в том, что строка взята из запроса POST, предоставленного пользователем,Разве не имеет смысла предполагать, что пользовательский ввод осуществляется по местному времени, а не по UTC?Я что-то упустил или это не должно быть ActiveRecord по умолчанию?Какой правильный способ сделать это, кроме необходимости конвертировать время во всех моих контроллерах.Это кажется неправильным и не очень сухим.