2014-03-03 5 views
0

나는 내 컨트롤러에 다음 코드를했다 :정의되지 않은 메서드`PAGINATE '문제

undefined method `paginate' for #<Sunspot::Search::PaginatedCollection:0x007f86243ac440> 
+0

페이지 네이션 젬을 사용하고 있습니까? 그렇다면 어떤 질문을 하시겠습니까? – bjhaid

+0

예, 저는 will_paginate를 사용하고 있습니다. –

답변

0

한번에 검색 블록 내에서 사용하기 :

@search = Product.search do |query| 
    query.paginate page: page, per_page: per_page 
end 
하지만 오류를

def index 
    @search = Product.search do |query| 
    query.fulltext params[:sSearch] 
    query.with(:store_id, @store.id) 
    end 
    products = @search.results.paginate(page).per_page(per_page) 
end 

private 
    def page 
    params[:iDisplayStart].to_i/per_page + 1 
    end 

    def per_page 
    params[:iDisplayLength].to_i > 0 ? params[:iDisplayLength].to_i : 10 
    end 

를 얻을 수

블록에서 검색어 변수를 사용할 필요가 없습니다. 블록 내에서 직접 메소드를 호출 할 수 있습니다.

@search = Product.search do 
    fulltext params[:sSearch] 
    with(:store_id, @store.id) 
    paginate page: page, per_page: per_page 
end