我正在寻找一种相反的方法:
Model.where(:name => 'julian')
就像是 :
Model.where(:name => is_not('julian'))
我找到了这篇文章。但是,find(:all, :conditions => {})
现在在 rails 3 中已弃用,此外,我认为必须存在一种更清洁的方法来做到这一点。
有什么建议吗?
我正在寻找一种相反的方法:
Model.where(:name => 'julian')
就像是 :
Model.where(:name => is_not('julian'))
我找到了这篇文章。但是,find(:all, :conditions => {})
现在在 rails 3 中已弃用,此外,我认为必须存在一种更清洁的方法来做到这一点。
有什么建议吗?
简单的答案是:
Model.where('models.name != ?', 'julian')
除非,您想建立实际的 Arel 条件,在这种情况下,您将执行以下操作:
Model.where(Model.arel_table[:name].not_eq('julian'))
此外,您可以使用 meta_where gem:https ://github.com/ernie/meta_where