Как прибавить время к Datetime ruby?

params[:event][:start_time] =params [:event][:start_time] + 1.day
        params[:event][:end_time] = params[:event][:start_time] + 1.day

Контроллер для events, где я получаю сначала данные из форм, а далее хочу прибавить к ним 1 день, НО :
ошибка вылезает такая
no implicit conversion of Symbol into Integer
Я понимаю что данные в парамс хранятся в виде строки, но не знаю как исправить данный код
  • Вопрос задан
  • 488 просмотров
Пригласить эксперта
Ответы на вопрос 2
@kkrieger
1318996912 если в таком виде время идет то сделать так
start_time = DateTime.strptime(params[:event][:start_time],'%s') + 1.day

если в другом формате вот дока по методу apidock.com/ruby/DateTime/strptime/class
Ответ написан
Комментировать
@thepry
Ruby on rails, 1С разработчик
Если вы хотите складывать даты, то получите Datetime из строки.

Но из ошибки, похоже, что у вас params[:event] возвращает не хэш, а массив, или строку и руби пытается :start_time преобразовать в integer, чтобы получить элемент по индексу.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы