Я использую SunSpot 2.2.2 в моем рельсах приложение для поиска результатов, У меня есть этот код для группировки в моей модели:will_paginate для группового запроса с веснушки 2.2.2 в рельсах
def self.search_products(params, currency = nil, page_uri = nil)
search_products = Sunspot.search(VariantPrice) do
group :code do
if params[:gallery_order].present?
order_by :price, params[:gallery_order].downcase.to_sym
elsif params[:new_arrival].present? || params[:name] == "new-arrivals"
order_by :product_created_at, :desc
else
if params[:fashion_type] == "fashion"
order_by :price, :asc
elsif params[:sort] != "lowhigh"
order_by :price, :asc
else
order_by :price, :asc
end
end
limit 1
end
end
и у меня есть этот код в моем контроллере:
variant_prices = Product.search_products(params, @currency, request.original_fullpath)
@variant_prices = []
variant_prices.group(:code).groups.each do |group|
group.results.each do |result|
@variant_prices << result
end
end
@variant_prices = @variant_prices.paginate(:page => params[:page], :per_page => PER_PAGE_VALUE)
@variant_prices_count = variant_prices.group(:code).total
теперь я получаю ожидаемый счет, который @variant_prices_count, который 1400 в моем случае, но я получаю рассчитывать @variant_prices, как 60, который не так в моем случае, здесь я ожидал получить 1400. И тогда я хочу разбиться на страницы с этим результатом. не могу понять, будет ли это проблемой will_paginate или чем-то еще. Помощь!
Что ваше значение PER_PAGE_VALUE установить, как? – Tim
variant_prices.group (: code) .total дает результат 1400 как результат, и я хочу разбивать его на 1400 данных результатов, но в конечном результате я получаю только 60 значений –
по умолчанию 19 значений –