Ваша проблема в том, что вы форматируете свое время в строку, прежде чем закончите обрабатывать его как время.Это имеет больше смысла:
@time = Time.now
@reducetime = @time - 15.minutes
# And then later when you're reading to display @time...
formatted_time = @time.strftime("%Y-%m-%d %H:%M:%S")
Вы не должны форматировать свои данные до тех пор, пока не будете готовы их отобразить.
Если вы должны иметь @time
в качестве отформатированного временитогда вам придется проанализировать его перед вычислением @reducetime
:
@reducetime = (DateTime.strptime(@time, "%Y-%m-%d %H:%M:%S") - 15.minutes).to_time