Я пытаюсь разрешить уничтожение записи только в том случае, если эта запись была создана за последние 30 минут.Дата, возвращающая нечетное значение
Затем я получить значение моей записи (date2) created_at
и сверять Time.now
(date1):
date1 = 2016-09-21 19:44:52 +0200
date2 = 2016-09-21 17:23:16 UTC
тогда я просто вычитаем два:
(date1-date2).minutes.to_i
Но результат Возвращается в 10s тысяч (что-то вроде 97000) и очень быстро увеличивается, когда я обновляюсь .. (как изменения Time.now
) , тогда как мы должны получить только 141 минуту, как указано выше, значения значений
Подсказка: '30.minutes.to_i' возвращает' 1800'. (удалите 'to_i', чтобы найти объяснение) – Stefan
well' to_i' does not do much, когда я его удаляю. Он стирает десятичную часть разницы между двумя датами. Хотя 'minutes' кажется действительным методом Ruby, но не связанным с Time, поэтому я думаю, что мой результат все испорчен. Я нашел 'to_f', который вместо этого возвращает число секунд, которое я могу разделить на 60:' (date1-date2) .to_f/60'. У меня все еще есть несоответствие, но я думаю, это из-за того, что у вас UTC, а другой +0200. попытается исправить это. – Maxence