Мне нужно проверить некоторые таблицы за прошедшие даты, за последние 5 суббот с сегодняшнего дня, используя Chronic gem

Я установил Хронический камень и пока

Я могу получить Chronic.parse('Saturday',:context =>:past), чтобы вернуть дату прошлой субботы, но не

  1. "5 последних суббот" возвращает "ноль"

  2. Я хотел бы вернуть в этом формате: strftime "%m%d%Y%H%M"

  3. Я также не могу пометить на любые методы, такие как.exists? или должен ==true, чтобы я мог использовать его для проверки запуска этих отчетов

  4. Я просто хотел бы убедиться, что 02/11/2017 02/04/2017 28.01.2017 28.01.2017 21.01.2017 отображаются в виде текста на странице, но так как они будут меняться каждую неделю, мне нужна логика, которая вернется последние 5 суббот

1 ответ

Используйте "недели назад", чтобы получить субботу предыдущей недели:

Chronic.parse('1 week ago Saturday')
#=> "2017-02-11 12:00:00 -0500"
Chronic.parse('2 weeks ago Saturday')
#=> "2017-02-04 12:00:00 -0500"
Chronic.parse('3 weeks ago Saturday')
#=> "2017-01-28 12:00:00 -0500"
Chronic.parse('4 weeks ago Saturday')
#=> "2017-01-21 12:00:00 -0500"
Chronic.parse('5 weeks ago Saturday')
#=> "2017-01-14 12:00:00 -0500"

Вы можете отформатировать возвращенное значение, используя #strftime:

Chronic.parse('1 week ago Saturday').strftime("%m%d%Y%H%M")
#=> "021120171200"
Другие вопросы по тегам