活动记录中的'或'运营商?

时间:2011-06-20 13:30:39

标签: ruby-on-rails ruby ruby-on-rails-3 activerecord

它在RoR中是否存在OR运算符?我想要或者想要这样的东西:

Model.where('cat_id' => 5 OR 'color' => 'grey').all 

我想我必须使用find_by_sql nop?

2 个答案:

答案 0 :(得分:6)

我相信这就是方法:

Model.where('cat_id=? OR color=?', 5, 'grey')

答案 1 :(得分:3)

您可以考虑查看MetaWhere gem。它支持复合条件,语法如下:

Article.where(:title.matches % 'Hello%' | :title.matches % 'Goodbye%')

除此之外还有很多东西,但它是增强Arel的绝佳宝石。