Ruby on rails 多条件mongoid搜索中的查询

Ruby on rails 多条件mongoid搜索中的查询,ruby-on-rails,ruby,ruby-on-rails-3,mongodb,mongoid,Ruby On Rails,Ruby,Ruby On Rails 3,Mongodb,Mongoid,我的模型是这样的 def self.search(search) if search self.full_text_search(search) else scoped end end 但我还需要补充一点 self.or({start_date: /#{Regexp.escape(search)}/i},{end_date: /#{Regexp.escape(search)}/i}) 在 以上搜索。我如何在我的上述搜索中加入这两个条件。这两个

我的模型是这样的

def self.search(search)
    if search
    self.full_text_search(search)
    else
    scoped
    end
   end 
但我还需要补充一点

 self.or({start_date: /#{Regexp.escape(search)}/i},{end_date: /#{Regexp.escape(search)}/i})

以上搜索。我如何在我的上述搜索中加入这两个条件。这两个查询可以独立工作。但我需要让他们结合在一起。任何关于工作示例的帮助都是有用的

您可以使用合并方法将两个mongoid标准连接起来:

q1 = self.scope
q2 = self.or(...)

result = q1.merge(q2)
以下是相关文件:


这就是我所做的,它被解决了。谢谢@cpuguy83

使用上述代码的示例将更有帮助。我试过了,但没有错
def self.search(search)
    if search
    q1 = self.full_text_search(search)
    q2 = self.or({start_date: /#{Regexp.escape(search)}/i},{end_date: /#{Regexp.escape(search)}/i})
    result = q1.merge(q2)
    return result
    else
    scoped
    end
   end