我必须创建一个范围来创建活动的作业,但这感觉有点奇怪,而且老实说,它与PosgresSQL紧密耦合:

  scope :active, -> { where('reviewed_at NOTNULL and paid_at NOTNULL and end_at >= ?', Date.today) }

你能换个方式写吗?谢谢你

最佳答案

更短更漂亮的版本如下:

scope :active, -> { where.not(reviewed_at: nil, paid_at: nil).where('end_at >= ?', Date.today) }

关于ruby-on-rails - rails 4作用域NOTNULL重构,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35679586/

10-10 18:08
查看更多