Rails在模型中定义了多个属性

时间:2015-05-07 00:58:23

标签: ruby-on-rails ruby ruby-on-rails-4 model scope

我正在尝试在Job模型上设置范围,以显示符合以下条件的记录:

  • survey_date已成为过去。
  • survey_file有一个值。
  • quote_file没有任何价值。

如何编辑以下内容以使此范围有效?

scope :awaiting_quote, lambda { where('survey_date < ? AND survey_file = ? AND quote_file = ?', Time.now, true, false) }

我在这个实例中没有使用类方法,因为ActiveAdmin正在使用范围,这需要它作为模型范围。

1 个答案:

答案 0 :(得分:2)

使用IS NOT NULLIS NULL代替truefalse

scope :awaiting_quote, lambda { where('survey_date < ? AND survey_file IS NOT NULL AND quote_file IS NULL', Time.now) }