Правильный синтаксис в RoR для сравнения времени и даты - PullRequest
0 голосов
/ 11 августа 2010

Я пытаюсь связать параметр времени с .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

1 Ответ

1 голос
/ 11 августа 2010

Вы можете сделать что-то вроде этого:

Organization.find(1140).events.all(:conditions => ["DATE(time) < ?", Date.today]).blank?

DATE() - это функция mysql для анализа заданного значения в формате даты.И если вы хотите сравнить даты, вы должны использовать Date.today вместо Time.now.beginning_of_day, это намного короче и более читабельно.

...