и времени из колонки updated_at?
Смысл в том, что есть заказы (order) старше определенного времени. В bd Postgres данные представлены в виде updated_at: datetime и результат вывода updated_at: "2022-06-08 16:44:36". Если посмотреть время при помощи класса, то результат будет следующим:
2.6.4 :010 > DateTime.now
=> Sat, 11 Jun 2022 10:56:07 +0300
Есть ещё показатель времени как Time.new.
2.6.4 :006 > time = Time.now
=> 2022-06-11 10:53:00 +0300
Как вы справляетесь с этой проблемой? На стеке нашел вариант, переводить в строку, убирать лишнее и сравнивать. Но я сомневаюсь что такое корректно, возможно есть способы попроще. Для примера оставлю код.
require 'time'
require 'date'
t = Time.now
d = DateTime.now
dd = DateTime.parse(t.to_s)
tt = Time.parse(d.to_s)
Time.now.to_i DateTime.now.to_time.to_i
Интересно) А как посмотреть сколько часов? Имеется в виду, промежуток - час, например. 2.6.4 :011 > Time.now.to_i => 1654936444 2.6.4 :012 > DateTime.now.to_time.to_i => 1654936452
Поделить, вычесть
Из контекста понял, что речь о том как вытащить час из (например, текущего) времени Time.now.hour
Обсуждают сегодня