Подтвердить что ты не робот

Добавление минут к объекту Time

Итак, в рубине вы можете делать Time.now + 10.hours...

Нет эквивалента для секунд и минут? Например, Time.now + 15.mins.

4b9b3361

Ответ 1

Ruby (язык программирования) не имеет 10.hours, ActiveSupport как часть Ruby on Rails (веб-фреймворка). И да, он имеет minutes и seconds.

Однако Time#+ (метод + в экземплярах Time) возвращает новый экземпляр Time, который будет таким большим количеством секунд в будущем. Таким образом, без сахара Ruby on Rails вы можете просто сделать:

irb> t = Time.now
#=> 2011-08-03 22:35:01 -0600

irb> t2 = t + 10               # 10 Seconds
#=> 2011-08-03 22:35:11 -0600

irb> t3 = t + 10*60            # 10 minutes
#=> 2011-08-03 22:45:01 -0600

irb> t4 = t + 10*60*60         # 10 hours
#=> 2011-08-04 08:35:01 -0600

Ответ 2

Если вы используете ActiveSupport, то вы ищете полный .minutes и .seconds.

Time.now + 10.minutes
Time.now + 10.seconds

Ответ 3

Также в ActiveSupport вы можете:

10.minutes.from_now

10.minutes.ago

Ответ 4

Я думаю, вы говорите о расширениях, добавленных Rails. Я думаю, вам нужно 15.minutes

Смотрите docs here