【问题标题】:Rails scope multiple attributes in modelRails 作用域模型中的多个属性
【发布时间】:2015-07-17 09:09:53
【问题描述】:

我正在尝试在我的 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 正在使用范围,这要求它是模型范围。

【问题讨论】:

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


    【解决方案1】:

    使用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) }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多