Следующий код оценивает, что анализируемое время больше, чем 30 дней назад.
Time.parse("2011-01-03T14:31:57Z") < 30.days.ago => true
Почему это правда? Мне кажется, что < идет не в ту сторону, и должно быть >. Чего мне не хватает?
<
>
> относится к прошедшей дате или «больше чем» предыдущей даты.30 дней назад прошло 3 января, поэтому оно больше.
30.days.ago - это время, которое было 30 дней назад.Вы видите, что ваше время раньше, чем 30 дней назад, и оно таково.
30.days.ago
Итак, не читайте его как «менее 30 дней назад», читайте как «до 30 дней назад»,или "ранее, чем 30 дней назад".