2

我正在寻找一种相反的方法:

Model.where(:name => 'julian')

就像是 :

Model.where(:name => is_not('julian'))

我找到了这篇文章。但是,find(:all, :conditions => {})现在在 rails 3 中已弃用,此外,我认为必须存在一种更清洁的方法来做到这一点。

有什么建议吗?

4

2 回答 2

9

简单的答案是:

Model.where('models.name != ?', 'julian')

除非,您想建立实际的 Arel 条件,在这种情况下,您将执行以下操作:

Model.where(Model.arel_table[:name].not_eq('julian'))
于 2011-05-25T09:21:48.043 回答
0

此外,您可以使用 meta_where gem:https ://github.com/ernie/meta_where

于 2011-05-25T09:26:12.190 回答