2013-04-05 106 views
0

我的模型是這樣的查詢在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}) 

上面的搜索。我如何在上述搜索中加入這兩個條件。這兩個查詢獨立正常工作。但是我需要讓他們連在一起。與工作示例任何幫助是有益的

回答

0
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 

這是我做了什麼,它解決了。謝謝@ cpuguy83