你怎么能做一个条件句where子句?我有一个运行查询的rake任务。假设我正在构建一个查询,如下所示:
residentials = Residential.where(:is_active => true)
现在,如果我向rake任务传递某个参数,我想添加到where子句中。我在想这样的事情:
residentials.where(:something_else => true) if param_was_passed
但这只是替换了现有的where子句。如何将其添加到现有的where子句中?
2条答案
按热度按时间yx2lnoni1#
可以链接where语句
这个应该能用
确保这不是函数调用中的最后一行;在这种情况下,重复
residentials
变量作为最后一行。(@digger69评论)sdnqo3pr2#
您可以构建散列,然后将其提供给
.where
方法。类似于: