[英]Chain meta_search results
如何鏈接元搜索的搜索方法?
@result = User.search(params[:search]).search(params[:filters])
我們可以像這樣在ActiveRecord上調用鏈方法
User.active.male.where( age: 14..20)
是否可以在元搜索結果上進行鏈接?
我的工作正常。如果您遇到相同的問題,可以嘗試以下方法。
meta_search
的搜索方法返回meta_search
MetaSearch::Search::ModelName
,其中ModelName
是模型的名稱。 Meta_search為此對象提供了一種方法relation
。 您可以調用relation
方法來獲取ActiveRecord::Relation
對象,然后可以對該對象再次調用搜索方法。 請參閱下面的代碼,以了解我在說什么。
@result = User.search(params[:search])
@search = @result.relation.search(params[:filters])
@result
是MetaSearch::Search::User
的實例,因此我們可以調用relation
方法來獲取ActiveRecord::Relation
的實例,即
@result.relation
然后我們可以再次在此實例上調用搜索方法。 即
@result.relation.search(params[:filters])
一口氣搜索
@result = User.search params[:search].merge(params[:filters])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.