Правильный синтаксис в ROR за время сравнения DateTime
-
27-09-2019 - |
Вопрос
Я пытаюсь приписать временем .to_date
генерировать правильное сравнение
Organization.find(1140).events.all(:conditions => ["time < ?", Time.now.beginning_of_day]).blank?
Как бы я это сделал? Я попробовал это:
Organization.find(1140).events.all(:conditions => [time.to_date < ?, Time.now.beginning_of_day]).blank?
И это большой провал: D
Решение
Вы можете сделать что-то вроде этого:
Organization.find(1140).events.all(:conditions => ["DATE(time) < ?", Date.today]).blank?
DATE()
Это функция MySQL для анализа заданного значения на сегодняшний день. И если вы хотите сравнить даты, вы должны использовать Date.today
вместо Time.now.beginning_of_day
, Это намного короче и читабелее.
Не связан с StackOverflow