2014-10-04 6 views
1

나는 타이어를 내 사이트에 통합하려고하는데 페이지 매김에 어려움을 겪고 있습니다. 타이어의 컨텍스트 외부에서 결과의 페이지 매기기를 시도했으며 will_paginate이 해당 배열에서 작업 중입니다. 그러나, 타이어의 컨텍스트 내에서 will_paginate을 시도하면 큰 문제가 발생합니다.rails tire gem elasticsearch가 will_paginate와 제대로 작동하지 않습니다.

Will_Paginate은 per_page를 고려하여 올바른 페이지 수를 표시하지만 해당 페이지를 클릭하면 결과가로드되지 않고 첫 페이지와 동일합니다. 페이지 번호는 will_paginate 탐색에서 강조 표시됩니다.

+1

코드를 게시하십시오. 문서에는 예가 나와 있으며 통합하는 것은 매우 간단합니다 (https://github.com/karmi/retire). – mahemoff

답변

0

per_page 옵션을 사용하면 비슷한 문제가 발생합니다. 그래서 나는 Tire가 제공 한 크기 옵션으로 이동했다. 나는 무엇이 잘못되었는지 확신하지 못한다. 그러나 from과 size를 명시 적으로 설정하고 사용하는 것은 나를위한 트릭을 만들었습니다 ...

def search 
    options = { :page => (params[:page] || 1), :size => 100 } 
    query = params[:query] 
    @results = Tire.search ['index_name'], options do 
     query { string query } 
     from options[:size].to_i * (options[:page].to_i-1) 
    end 
    end