Рельсы 3,Kaminari нумерация страниц для простого массива
Для разбиения на страницы общего массива я получил это решение,
@arr_name = Kaminari.paginate_array (@arr_name).page (params [: page]). per (PER_PAGE_RECORDS)
PER_PAGE_RECORDS
переменная со значением согласно нумерации страниц
Есть идеи получше??
Также для вызова ajax для использования нумерации страниц можно использовать это,
По вашему мнению,
дать идентификатор вашей вкладке div
div id="paginate"
и внутри
<% = paginate @arr_name,: remote => true %>
И в ответном файле JS положить,
$ ('# paginate'). html ('<% = escape_javascript (paginate (@arr_name,: remote => true).to_s)%>');
Таким образом, ваши запросы будут AJAX.
Благодарю.
1 ответ
Это единственный доступный вспомогательный метод для разбивки на объекты массива с помощью Kaminari. В качестве альтернативы, как предложено на вики-странице kaminari, добавьте методы экземпляра к объекту массива.
Если вы пытаетесь найти общее решение, основанное на типе возвращаемого значения ActiveModel ( .all возвращает массив, а.where возвращает ARL), то следующее решение - это обходной путь.
unless @arr_name.kind_of?(Array)
@arr_name = @arr_name.page(params[:page]).per(PER_PAGE_RECORDS)
else
@arr_name = Kaminari.paginate_array(@arr_name).page(params[:page]).per(PER_PAGE_RECORDS)
end