我的控制器中有以下代码:
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
但是我收到了错误:
undefined method `paginate' for #<Sunspot::Search::PaginatedCollection:0x007f86243ac440>
答案 0 :(得分:0)
尝试在搜索块中使用:
@search = Product.search do |query|
query.paginate page: page, per_page: per_page
end
您不需要在块中使用查询变量。您可以直接在块中调用方法。
@search = Product.search do
fulltext params[:sSearch]
with(:store_id, @store.id)
paginate page: page, per_page: per_page
end