2012-10-31 1 views
1

기본 레코드 집합의 반환에 가장 가까운 방법은 무엇입니까? 검색 결과가 반환되지 않으면 현재 아래 코드를 사용하고 있지만 올바른 방법이 아닙니다.elasticsearch/tire를 올바르게 기본 레코드 세트를 반환하는 방법?

def self.search(params) 

     puts "SEARCH PARAM =" 
     puts params 

     if params 
     tire.search(load: true, page: params[:page], per_page: 20, :default_operator => 'AND', :use_dis_max => true) do 
      query do 
      boolean do 
       must { string 'gamers:2' } if params[:gamers] == "2" 
       must { string 'gamers:4' } if params[:gamers] == "4" 
      end 
      end 
      to_curl 
     end 
     else 
     puts "search params not found" 
     @gamers = Gamers.where(:level => "rookie") 
     end 
    end 

답변

1

검색 결과가 반환되지 않을 때 params가 전달되지 않으면 기본 세트 만 넣는 것처럼 보입니다.

나는 검색 결과를 얻고 ! results.total.zero를 확인하겠습니까?을 입력 한 다음 적절하게 기본값을 가져옵니다.